Forum Discussion
Swagger URL for PBI Report Server
- 8 years ago
If you just want the JSON file you can get it from SwaggerHub here:
https://app.swaggerhub.com/apis/microsoft-rs/PBIRS/2.0
In the top right you'll see an arrow pointing down, click that and you should see and option to download the JSON. I just noticed that there were some codegen customisations that we missed for PBIRS but added for SSRS which may be why your getting compilation errors, I just added them in I'll try it on my end to make sure it works. However if you still want to try the editor let me know if you see any issues.
Matt M.
Visual Studio uses something called AutoRest to generate there REST stubs, you can see the GitHub link here:
https://github.com/Azure/AutoRest
Unfortuntely the version that ships in Visual Studio has some issues and GitHub is updated more frequently than VS. If your looking to generate client proxies there are some other options you can try, for most of our testing we used either the opensource Swagger editor or the best option is to use the swagger codegen CLI.
1. Swagger Codegen - https://github.com/swagger-api/swagger-codegen It's a little more work to get setup but has the most support and can be cusotmized quite a bit.
2. Swagger Editor - Got to http://editor.swagger.io of you copy and past the Swagger json into the editor you can export to many differant languages in the UI C# being one of them
3. Swagger Hub - this is where we have the docs hosted and like the editor above it has export options as well but they're code gen is a few steps behind the open source one
Let me know how it goes or is you have any other questions!
Thanks!
Matt M.
Thanks Matt!
I found the little arrow (download client) button just by chance! It would help, and save countless hours of searching, if you could mention in some documentation how to actually use the REST API. All I have come across is just mentioning that there is an API and a bit what you can do with it. Sorry for the rant, but I have spent all day on this getting nowhere.
As I said, I downloaded the generated client then opened it in VS 2017. It did not compile. Read the readme and tried running the build.bat, same thing, did not compile. I choose csharpe, and I allso tried CsharpDotNet2 but that did not compile either. The compile errors I got from csharp is lots of these:
src\IO.Swagger\Model\ReportParameterDefinition.cs(65,325): error CS1750: A value of type '<null>' cannot be used as a default parameter because there are no standard conversions to type 'IO.Swagger.Model.ReportParameterState'
A quick look at Swagger Codegen tells me Im going to spent one more day just getting the environment ready to output a client!?
The Swagger Editor needs the json which I asked for in my original question. Where is it? How do I get that file?
Sorry again and thank you for your help!
- mgmeyer8 years agoPower BI Team
If you just want the JSON file you can get it from SwaggerHub here:
https://app.swaggerhub.com/apis/microsoft-rs/PBIRS/2.0
In the top right you'll see an arrow pointing down, click that and you should see and option to download the JSON. I just noticed that there were some codegen customisations that we missed for PBIRS but added for SSRS which may be why your getting compilation errors, I just added them in I'll try it on my end to make sure it works. However if you still want to try the editor let me know if you see any issues.
Matt M.
- Anonymous8 years agoNot applicable
OK, downloaded the JSON(resolved) and imported it into swagger editor online. All is fine. The generated client csharp. Opened it ind cmd and ran build.bat. The window is flooded by compile errors!
src\IO.Swagger\Model\Resource.cs(158,23): warning CS0108: 'IO.Swagger.Model.Resource.ContentType' hides inherited member 'IO.Swagger.Model.CatalogItem.ContentType'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\CatalogItem.cs(158,23): (Location of symbol related to previous warning) src\IO.Swagger\Model\Resource.cs(165,23): warning CS0108: 'IO.Swagger.Model.Resource.Content' hides inherited member 'IO.Swagger.Model.CatalogItem.Content'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\CatalogItem.cs(165,23): (Location of symbol related to previous warning) src\IO.Swagger\Model\Resource.cs(172,22): warning CS0108: 'IO.Swagger.Model.Resource.IsFavorite' hides inherited member 'IO.Swagger.Model.CatalogItem.IsFavorite'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\CatalogItem.cs(172,22): (Location of symbol related to previous warning) src\IO.Swagger\Model\ResourceItem.cs(55,22): warning CS0108: 'IO.Swagger.Model.ResourceItem.Id' hides inherited member 'IO.Swagger.Model.ManifestItem.Id'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\ManifestItem.cs(53,22): (Location of symbol related to previous warning) src\IO.Swagger\Model\ResourceItem.cs(62,23): warning CS0108: 'IO.Swagger.Model.ResourceItem.Path' hides inherited member 'IO.Swagger.Model.ManifestItem.Path'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\ManifestItem.cs(60,23): (Location of symbol related to previous warning) src\IO.Swagger\Model\ResourceItem.cs(69,23): warning CS0108: 'IO.Swagger.Model.ResourceItem.Name' hides inherited member 'IO.Swagger.Model.ManifestItem.Name'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\ManifestItem.cs(67,23): (Location of symbol related to previous warning) src\IO.Swagger\Model\ResourceItem.cs(76,23): warning CS0108: 'IO.Swagger.Model.ResourceItem.Hash' hides inherited member 'IO.Swagger.Model.ManifestItem.Hash'. Use the new keyword if hiding was intended. src\IO.Swagger\Model\ManifestItem.cs(74,23): (Location of symbol related to previous warning) src\IO.Swagger\Model\ThumbnailItem.cs(55,22): warning CS0108: 'IO.Swagger.Model.ThumbnailItem.Id' hides inherited member 'IO.Swagger.Model.ManifestItem.Id'. Use the new keyword if hiding was intended.Am I using the wrong .Net version? I have installed Visual Studio 2017 so I guess I have the latest stable version of C#!?
- mgmeyer8 years agoPower BI Team
I just tried it myself via the editor and everything compiled fine, however there were a lot of Warnings mostly because of the syntax that the generated code is using. The list that you show only contains Warnings, were you getting errors as well? Also it looks like the code that SwaggerHub generates doesn't compile most likely because they haven't aligned with the latest codegen tools I'll file a ticket with them and hopefully get it resolved.