Forum Discussion

Rick4him's avatar
Rick4him
Helper I
8 years ago
Solved

Invalid Status Code Forbidden after client.Dashboards.GenerateTokenInGroupAsync

Dashboard that I wanted was in the call directly before, then it errors...   var dashboards = await client.Dashboards.GetDashboardsInGroupAsync(GroupId); // Get the first report in the group. var...
  • Eric_Zhang's avatar
    8 years ago

    Rick4him wrote:

    Dashboard that I wanted was in the call directly before, then it errors...

     

    var dashboards = await client.Dashboards.GetDashboardsInGroupAsync(GroupId);

    // Get the first report in the group.

    var dashboard = dashboards.Value.FirstOrDefault();

    if (dashboard == null)

    {

    return View(new EmbedConfig()

     {

    ErrorMessage = "Group has no dashboards."

     });

    }

    // Generate Embed Token.

    var generateTokenRequestParameters = new GenerateTokenRequest(accessLevel: "view");

    var tokenResponse = await client.Dashboards.GenerateTokenInGroupAsync(GroupId, dashboard.Id, generateTokenRequestParameters);

     


    Rick4him

    Can you ensure all those options are correct.

    1. The registered application has sufficient permissions.
    2. The groupid is correct.
    3. The master power bi account is the admin of the group.
    4. Is the embedding capacity disable for that specific workspace? You can find the information by clicking "Admin portal"->"Tenant settings"->"Developer settings"(scroll to bottom).

    For further troubleshooting. follow

    1. Add try catch block to your code to get the very specific error message.
      try
                      {
                          //your code here
                      }
      catch (HttpOperationException ex)
                     { 
                          //Bad Request
                          var content = ex.Response.Content;
                          Console.WriteLine(content); 
                      }
    2. Test the REST API GenerateToken in POSTMAN.