Nevermind after looking through your source code it turned out to be easier than I thought (I thought I had to pass the template etc based on the documentation)
var rs = new ReportingService("http://localhost:5488");
var report = await rs.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Name = "sales-order"
},
Data = data,
Options = new RenderOptions() { Debug = new DebugOptions() { LogsToResponseHeader = false } }
});
Just a thought, if the Name property said something about the name of the template to render I would have intuitively tried it. (Right now it says "Readable name, does not need to be unique")