The Telerik Reporting REST service provides an Application Programming Interface (API) over HTTP to the reports generation engine. This engine allows exporting report documents in all supported rendering formats. The server - client communication relies on simple Data Transfer Objects (DTOs). All DTOs are JSON encoded.
The client of the service requests a report by a JSON object called client report source. The service then resolves this to a .NET report source. To do that it uses a REST Service Report Resolver. The Telerik Reporting REST service serves the rendered reports as web accessible resources. The service caches all generated resources in a REST Service Storage of choice.
In some scenarios you need to share the service for more than one app. For these you may need to turn on Cross-Origin Resource Sharing.
If all new report requests get executed simultaneously the host will get overloaded. To avoid this the service executes the report generation requests in a task queue. The count of the simultaneously rendered reports is configurable. In some scenarios you need to host two or more reports services into a single application. For that do assign a unique HostAppId property on each implementing controller. This will produce dedicated task queue for each service instance. Please do set appropriate worker count for each queue so that the system does not get overloaded.