A method for content sharing through external systems, comprising: receiving, by a sharing module, an instruction to publish a share to an external system (180, 190), the share representing a folder or directory in a managed repository (150, 160, 170), the sharing module running on a server machine operating in an enterprise computing environment, the managed repository residing in the enterprise computing environment, the external system (180, 190) operating independently and external to the managed repository (150, 160, 170), the server machine having a processor and a non-transitory computer readable medium; and publishing, by the sharing module from the managed repository (150, 160, 170) to the external system (180, 190), objects in the share and metadata associated with the objects, the publishing including: making a first application programming interface call, through a first sharing module API (122, 124, 126) and a repository API (152, 164, 176), to retrieve the objects and the metadata from the share in the managed repository (150, 160, 170); and making a second API call, through a second sharing module API (112, 132) and an external system API (182, 192), to communicate the objects and the metadata to the external system (180, 190); the first sharing module API (122, 124, 126) interfacing the sharing module and the repository API (152, 164, 176), the repository API (152, 164, 176) interfacing the first sharing module (122, 124, 126) and the managed repository (150, 160, 170); the second sharing module API (112, 132) interfacing the sharing module and the external system API (182, 192), the external system API (182, 192) interfacing the second sharing module API (112, 132) and the external system (180, 190); and wherein the repository API (152, 164, 176), the first sharing module API (122, 124, 126), the second sharing module API (112, 132), and the external system API (182, 192) together provide a one-to-one mapping of communications protocols used by the managed repository (150, 160, 170) and the external system (180, 190). receiving, by a sharing module, an instruction to publish a share to an external system (180, 190), the share representing a folder or directory in a managed repository (150, 160, 170), the sharing module running on a server machine operating in an enterprise computing environment, the managed repository residing in the enterprise computing environment, the external system (180, 190) operating independently and external to the managed repository (150, 160, 170), the server machine having a processor and a non-transitory computer readable medium; and publishing, by the sharing module from the managed repository (150, 160, 170) to the external system (180, 190), objects in the share and metadata associated with the objects, the publishing including: making a first application programming interface call, through a first sharing module API (122, 124, 126) and a repository API (152, 164, 176), to retrieve the objects and the metadata from the share in the managed repository (150, 160, 170); and making a second API call, through a second sharing module API (112, 132) and an external system API (182, 192), to communicate the objects and the metadata to the external system (180, 190); the first sharing module API (122, 124, 126) interfacing the sharing module and the repository API (152, 164, 176), the repository API (152, 164, 176) interfacing the first sharing module (122, 124, 126) and the managed repository (150, 160, 170); the second sharing module API (112, 132) interfacing the sharing module and the external system API (182, 192), the external system API (182, 192) interfacing the second sharing module API (112, 132) and the external system (180, 190); and wherein the repository API (152, 164, 176), the first sharing module API (122, 124, 126), the second sharing module API (112, 132), and the external system API (182, 192) together provide a one-to-one mapping of communications protocols used by the managed repository (150, 160, 170) and the external system (180, 190). making a first application programming interface call, through a first sharing module API (122, 124, 126) and a repository API (152, 164, 176), to retrieve the objects and the metadata from the share in the managed repository (150, 160, 170); and making a second API call, through a second sharing module API (112, 132) and an external system API (182, 192), to communicate the objects and the metadata to the external system (180, 190); the first sharing module API (122, 124, 126) interfacing the sharing module and the repository API (152, 164, 176), the repository API (152, 164, 176) interfacing the first sharing module (122, 124, 126) and the managed repository (150, 160, 170); the second sharing module API (112, 132) interfacing the sharing module and the external system API (182, 192), the external system API (182, 192) interfacing the second sharing module API (112, 132) and the external system (180, 190); and wherein the repository API (152, 164, 176), the first sharing module API (122, 124, 126), the second sharing module API (112, 132), and the external system API (182, 192) together provide a one-to-one mapping of communications protocols used by the managed repository (150, 160, 170) and the external system (180, 190).