public async Task <Dictionary <string, string> > GetAllResports() { ODataResponseListWorkspace odataWorkspaces = await RetrieveAllWorkspaces(); IList <Workspace> workspaces = odataWorkspaces.Value; Dictionary <string, string> dict = new Dictionary <string, string>(workspaces.Count); using (var client = CreateClient()) { foreach (Workspace item in workspaces) { ODataResponseListDataset odataSet = await client.Datasets.GetDatasetsAsync(WorkspaceCollectionName, item.WorkspaceId); if (odataSet.Value.Count == 0) { continue; } List <string> list = new List <string>(odataSet.Value.Count); foreach (Dataset set in odataSet.Value) { list.Add(string.Format("{0} {1}", set.Name, set.Id)); } dict.Add(item.WorkspaceId, string.Join(",", list)); } } return(dict); }
/// <summary> /// Lists the datasets that are published to a given workspace. /// </summary> /// <param name="workspaceCollectionName">The Power BI workspace collection name</param> /// <param name="workspaceId">The target Power BI workspace id</param> /// <returns></returns> static async Task <IList <Dataset> > ListDatasets(string workspaceCollectionName, string workspaceId) { using (var client = await CreateClient()) { ODataResponseListDataset response = await client.Datasets.GetDatasetsAsync(workspaceCollectionName, workspaceId); return(response.Value); } }
/// <summary> /// Lists the datasets that are published to a given workspace. /// </summary> /// <param name="workspaceCollectionName">The Power BI workspace collection name</param> /// <param name="workspaceId">The target Power BI workspace id</param> /// <returns></returns> static async Task ListDatasets(string workspaceCollectionName, string workspaceId) { using (var client = await CreateClient()) { ODataResponseListDataset response = await client.Datasets.GetDatasetsAsync(workspaceCollectionName, workspaceId); foreach (Dataset d in response.Value) { Console.WriteLine("{0}: {1}", d.Name, d.Id); } } }
public static async Task <IEnumerable <Dataset> > GetDatasetsByAppWorkspaceAsync(string workspaceId) { using (PowerBIClient client = await CreateClient()) { ODataResponseListDataset response = await client.Datasets.GetDatasetsInGroupAsync(workspaceId); ODataResponseListGatewayDatasource response2 = await client.Datasets.GetGatewayDatasourcesInGroupAsync(workspaceId, response.Value[0].Id); ODataResponseListDatasource response3 = await client.Datasets.GetDatasourcesInGroupAsync(workspaceId, response.Value[0].Id);; return(response.Value); } }
static async Task DeleteAllDatasets(string workspaceCollectionName, string workspaceId) { using (var client = await CreateClient()) { ODataResponseListDataset response = await client.Datasets.GetDatasetsAsync(workspaceCollectionName, workspaceId); if (response.Value.Any()) { foreach (Dataset d in response.Value) { await client.Datasets.DeleteDatasetByIdAsync(workspaceCollectionName, workspaceId, d.Id); Console.WriteLine("{0}: {1}", d.Name, d.Id); } } else { Console.WriteLine("No Datasets found in this workspace"); } } }
static void Main(string[] args) { try { // Create a user password cradentials. credential = new UserPasswordCredential(username, Secrets.Password); // Authenticate using created credentials Authorize().Wait(); using (var client = new PowerBIClient(new Uri(apiUrl), tokenCredentials)) { EmbedToken embedToken = client.Reports.GenerateTokenInGroup(groupId, "<REPORT ID>", new GenerateTokenRequest(accessLevel: "View", datasetId: "<DATASET ID>")); Report report = client.Reports.GetReportInGroup(groupId, "<REPORT ID>"); #region Output Embed Token Console.WriteLine("\r*** EMBED TOKEN ***\r"); Console.Write("Report Id: "); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("<REPORT ID>"); Console.ResetColor(); Console.Write("Report Embed Url: "); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine(report.EmbedUrl); Console.ResetColor(); Console.WriteLine("Embed Token Expiration: "); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine(embedToken.Expiration.Value.ToString()); Console.ResetColor(); Console.WriteLine("Report Embed Token: "); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(embedToken.Token); Console.ResetColor(); #endregion #region Output Datasets Console.WriteLine("\r*** DATASETS ***\r"); // List of Datasets // This method calls for items in a Group/App Workspace. To get a list of items within your "My Workspace" // call GetDatasets() ODataResponseListDataset datasetList = client.Datasets.GetDatasetsInGroup(groupId); foreach (Dataset ds in datasetList.Value) { Console.WriteLine(ds.Id + " | " + ds.Name); } #endregion #region Output Reports Console.WriteLine("\r*** REPORTS ***\r"); // List of reports // This method calls for items in a Group/App Workspace. To get a list of items within your "My Workspace" // call GetReports() ODataResponseListReport reportList = client.Reports.GetReportsInGroup(groupId); foreach (Report rpt in reportList.Value) { Console.WriteLine(rpt.Id + " | " + rpt.Name + " | DatasetID = " + rpt.DatasetId); } #endregion #region Output Dashboards Console.WriteLine("\r*** DASHBOARDS ***\r"); // List of reports // This method calls for items in a Group/App Workspace. To get a list of items within your "My Workspace" // call GetReports() ODataResponseListDashboard dashboards = client.Dashboards.GetDashboardsInGroup(groupId); foreach (Dashboard db in dashboards.Value) { Console.WriteLine(db.Id + " | " + db.DisplayName); } #endregion #region Output Gateways Console.WriteLine("\r*** Gateways ***\r"); ODataResponseListGateway gateways = client.Gateways.GetGateways(); Console.WriteLine(gateways.Value[0].Name); //foreach (Gateway g in gateways) //{ // Console.WriteLine(g.Name + " | " + g.GatewayStatus); //} #endregion } } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(ex.ToString()); Console.ResetColor(); } }