IP Library Granted Patent US 9,465,877
Granted Patent B2
US 9,465,877 · App. 14/697,928 · Granted Oct 11, 2016

Globally unique identifiers in an online content management system

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 9,465,877
App. No.
14/697,928
Granted
Oct 11, 2016
Kind
B2
Abstract

Systems, methods, and computer-readable storage media for implementing globally unique identifiers (GUIDs) in a multi-user network-based content management environment, from the perspective of a server creating a GUID for a content item, and serving requests based on the GUID. A content management system can identify a content item at a location within the data storage. Each user of the content management system can be associated with a respective user account having an amount of storage space within the storage environment. The content management system can model a user account as a collection of content item objects and globally unique identifiers that are independent of a directory-based hierarchy of content items.

Claims (38)

1. A system comprising:

a processor; and

a computer-readable storage medium having stored therein processor-executable instructions for causing the processor to:

generate, for a content item, a globally unique identifier, wherein the globally unique identifier is unique within a multi-user network-based content management environment;

associate the globally unique identifier with data that identifies: the content item, a location of the content item within the multi-user network-based content management environment, and at least one user account authorized to access to the content item;

propagate the globally unique identifier to at least one client device associated with at least one authorized user account; and

responsive to a request identifying the globally unique identifier from an authorized user account, providing to a client device associated with the authorized user account at least one of the content item, a revision of the content item, the location, an attribute of the content item, or metadata associated with the content item.

2. The system of claim 1 , wherein the computer readable storage medium further comprises processor-executable instructions for causing the processor to:

model a user account as a collection of content item objects and globally unique identifiers that are independent of a directory-based hierarchy of content items.

3. The system of claim 1 , further comprising an identifier database that maps the globally unique identifier to a plurality of revisions of the content item.

4. The system of claim 3 , wherein the plurality of revisions of the content item spans multiple namespaces within the multi-user network-based content management environment.

5. The system of claim 1 , wherein the computer readable storage medium further comprises processor-executable instructions for causing the processor to:

associate the globally unique identifier, in an identifier database, with a parent globally unique identifier associated with a parent content item from which the content item was created, the associating occurring in response to concurrent actions on the content item.

6. The system of claim 5 , wherein the current actions include at least one of a content item copy, a content item move, a content item rename, or a content item delete.

7. The system of claim 1 , wherein associating the globally unique identifier, in the identifier database, with the location further comprises:

incorporating the location into the content item as a content item attribute.

8. The system of claim 1 , wherein the location comprises one of a content item path within the multi-user network-based content management environment or an apparent content item path within a user account.

9. A computer-implemented method comprising:

retrieving, via a processor, a globally unique identifier associated with an identified content item in a content management system, wherein the globally unique identifier is unique within the content management system;

submitting, to the content management system, a request for the identified content item, wherein the request indicates the identified content item by the globally unique identifier, and wherein the request is associated with a user account having access to the identified content item; and

receiving, from the content management system and in response to the request, at least one of the identified content item, a revision of the identified content item, a location of the identified content item, an attribute of the identified content item, or metadata associated with the identified content item.

10. The method of claim 9 , wherein the request further indicates an action to perform for the identified content item.

11. The method of claim 10 , wherein the action comprises one of a content item copy, a content item move, a content item rename, a content item delete, or a content item synchronization operation between a client and the content management system.

12. The method of claim 9 , wherein the globally unique identifier is retrieved from a database local to a client device submitting the request for the identified content item.

13. The method of claim 12 , wherein the database is populated based on globally unique identifiers received from the content management system.

14. The method of claim 9 , wherein the database maps the globally unique identifier to a plurality of revisions of the identified content item.

15. The method of claim 9 , wherein associating the globally unique identifier, in the identifier database, with the location further comprises:

incorporating the location into the identified content item as a content item attribute.

16. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform operations comprising:

retrieving, a globally unique identifier associated with a content item stored at a location within a synchronized online content management system, wherein the globally unique identifier is unique within the synchronized online content management system;

submitting, to the content management system, a request to perform a content item operation on the content item, wherein the request indicates the content item by the globally unique identifier, and wherein the request is associated with an authorized user having access to the content item; and

receiving, from the synchronized online content management system in response to the request, a result of the content item operation and a new globally unique identifier; and

updating the content item in local storage based on the result of the content item operation and associating the new globally unique identifier with the content item.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the globally unique identifier is at least a 128-bit integer.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions, when executed by the processor, further cause the processor to perform operations further comprising:

associating the globally unique identifier with a parent globally unique identifier associated with a parent content item from which the content item was created, the associating occurring in response to concurrent actions on the content item.

19. The non-transitory computer-readable storage medium of claim 16 , wherein the globally unique identifier is mapped to a plurality of revisions of the content item.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the plurality of revisions of the content item spans multiple namespaces within the synchronized online content management system.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
RELEASE OF SECURITY INTEREST Recorded Dec 12, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069613/0744 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →
SECURITY INTEREST Recorded Apr 14, 2017
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042254/0001 →