private static Dictionary<String, String> GetDocumentDownloadInfo(AmazonWorkDocsClient wdClient, String orgId, String user, String docName)
        {
            var documentInfoMap = new Dictionary<String, String>();
            var userFolderId = GetUserFolderId(wdClient, orgId, user);
            if(!String.IsNullOrEmpty(userFolderId))
            {
                var wdDescribeFolderContentsRequest = new DescribeFolderContentsRequest()
                {
                    FolderId = userFolderId
                };

                String marker = null;
                bool docNameFound = false;
                do
                {
                    wdDescribeFolderContentsRequest.Marker = marker;
                    var result = wdClient.DescribeFolderContents(wdDescribeFolderContentsRequest);
                    foreach(var document in result.Documents)
                    {
                        if(document.LatestVersionMetadata.Name == docName)
                        {
                            documentInfoMap.Add("documentId", document.Id);
                            documentInfoMap.Add("versionId", document.LatestVersionMetadata.Id);
                            docNameFound = true;
                            break;
                        }
                    }
                    marker = result.Marker;
                } while (!docNameFound && String.IsNullOrEmpty(marker));
            }
            else
                Console.WriteLine("Could not get user folder");

            return documentInfoMap;
        }
        public static void Sample()
        {
            // Based on WorkDocs dev guide code at http://docs.aws.amazon.com/workdocs/latest/developerguide/connect-workdocs-role.html
            var wdClient = new AmazonWorkDocsClient(region: RegionEndpoint.USWest2);

            String orgId        = "d-123456789c";
            String userEmail    = "*****@*****.**";
            String userFolderId = GetUserFolderId(wdClient, orgId, userEmail);

            var wdDescribeFolderContentsRequest = new DescribeFolderContentsRequest()
            {
                FolderId = userFolderId
            };

            // Get all of the folders
            var    wdUserDocuments = new List <DocumentMetadata>();
            String marker          = null;

            do
            {
                wdDescribeFolderContentsRequest.Marker = marker;
                var result = wdClient.DescribeFolderContents(wdDescribeFolderContentsRequest);
                wdUserDocuments.AddRange(result.Documents);
                marker = result.Marker;
            } while (String.IsNullOrEmpty(marker));

            Console.WriteLine("Docs for user {0}:", userEmail);
            foreach (var document in wdUserDocuments)
            {
                var md = document.LatestVersionMetadata;
                Console.WriteLine("Name:           {0}", md.Name);
                Console.WriteLine("Size (bytes):   {0}", md.Size);
                Console.WriteLine("Last modified:  {0}", md.ModifiedTimestamp);
                Console.WriteLine("Doc ID:         {0}", document.Id);
                Console.WriteLine();
            }
        }