REST API v2
Introduction
Telerik Report Server Web API allows you to manage all report server resources like reports, categories, data connections, scheduled tasks, data alerts, users, user roles and settings through a simple web interface.
The API description is also available from the Report Server's management application at the following address: http://[reportserver]/help/index.
Category
Endpoint for managing report categories.
API | Description |
---|---|
GET api/reportserver/v2/categories |
Returns a collection of all categories. |
GET api/reportserver/v2/categories/reportaccess/{accessPermission} |
Returns a collection of all categories for which the current user has the requested access permission. The access permission applies to a report in the category or to the category itself. |
GET api/reportserver/v2/categories/{categoryId} |
Returns a category by ID. |
POST api/reportserver/v2/categories |
Creates a new category. |
PUT api/reportserver/v2/categories |
Updates a category. Report source references for reports within the category will not be updated automatically if the category name is modified. This may break any existing Drillthrough Actions, SubReports, etc. |
DELETE api/reportserver/v2/categories/{categoryId} |
Deletes a category by ID. The category can be deleted only if it does not contain any reports. |
GET api/reportserver/v2/categories/{categoryId}/reports |
Returns a collection of all reports in the specified category. |
Configuration
Endpoint for managing report configuration.
API | Description |
---|---|
GET api/reportserver/v2/configuration/theme |
Returns the standalone report designer custom theme colors. |
DataAlert
Endpoint for managing data alerts.
API | Description |
---|---|
GET api/reportserver/v2/dataalerts |
Returns a collection of all data alerts. |
GET api/reportserver/v2/dataalerts/{dataAlertId} |
Returns a data alert by ID. |
POST api/reportserver/v2/dataalerts |
Creates a new data alert. |
PUT api/reportserver/v2/dataalerts |
Updates a data alert. |
DELETE api/reportserver/v2/dataalerts/{dataAlertId} |
Deletes a data alert by ID. |
DataConnection
Endpoint for managing data connections.
API | Description |
---|---|
GET api/reportserver/v2/dataconnections |
Returns a collection of all data connections. |
GET api/reportserver/v2/dataconnections/{dataConnectionId} |
Returns a data connection by ID. |
POST api/reportserver/v2/dataconnections |
Creates a new data connection. |
PUT api/reportserver/v2/dataconnections |
Updates a data connection. |
DELETE api/reportserver/v2/dataconnections/{dataConnectionId} |
Deletes a data connection by ID. |
GET api/reportserver/v2/dataconnectionproviders |
Returns a collection of all available data connection providers. |
DataSchema
Endpoint for managing SQL DS data schema.
API | Description |
---|---|
POST api/reportserver/v2/data/sql/connection/supported |
Gets the connection availability for a specified connection string. |
POST api/reportserver/v2/data/sql/schema/supported |
Gets if the connection is supported for DB schema retrieval. |
POST api/reportserver/v2/data/sql/quotes |
Returns the quotes model for a specified connection string. |
POST api/reportserver/v2/data/sql/schema |
Returns the data schema for a specified connection string. |
POST api/reportserver/v2/data/sql/procedures |
Returns the procedures for the specified data connection. |
POST api/reportserver/v2/data/sql/parametername |
Returns the parameter name using the specified data provider. |
POST api/reportserver/v2/data/sql/parameters |
Returns the required parameters for the specified data connection. |
POST api/reportserver/v2/data/sql/preview |
Returns the preview data for the specified data connection. |
POST api/reportserver/v2/data/sql/model |
Returns the fields data model for the specified data connection. |
Document
Endpoint for on-demand exporting of a report to any of the supported document formats. For downloading an already generated document produced from Scheduled task or Data alert, use the end points defined in the Execution section (Execution controller).
API | Description |
---|---|
GET api/reportserver/v2/documents/{documentId} |
Retrieves a report document file by its ID. To specify whether the document will be directly opened in the browser or downloaded as a file, you can use a "content-disposition" parameter in the URL query. For example: http://{reportserverhost}/api/reportserver/documents/{id}?content-disposition=attachment. To open the document directly in the browser omit the "content-disposition" parameter. This endpoint can be used to get only report documents created via the POST /documents endpoint. |
POST api/reportserver/v2/documents |
Generates a new report document on the server. |
Execution
Endpoint for managing scheduling executions and created documents.
Misc
Endpoint for managing miscellaneous resources.
API | Description |
---|---|
POST api/reportserver/v2/logout |
Logs out the currently logged user. |
ObjectDataSource
Endpoint for managing object data source.
API | Description |
---|---|
GET api/reportserver/v2/data/ods/types |
Returns a list of all available types. |
POST api/reportserver/v2/data/ods/members |
Returns a list of all data members for the specified type. |
POST api/reportserver/v2/data/ods/model |
Returns the data fields schema for the specified object data source. |
POST api/reportserver/v2/data/ods/measures |
Returns the data fields schema for the specified type. Used for nested measures. |
Report
Endpoint for managing reports.
API | Description |
---|---|
GET api/reportserver/v2/reports |
Returns a collection of all reports. |
GET api/reportserver/v2/reports/{reportId} |
Returns a report by ID. |
POST api/reportserver/v2/reports |
Creates a new report. |
PUT api/reportserver/v2/reports |
Updates a report. |
DELETE api/reportserver/v2/reports/{reportId}/{revisionId} |
Deletes a report or a specified report revision. Deleting a report will also modify or delete scheduled tasks and data alerts associated with this report. |
GET api/reportserver/v2/reports/{reportId}/revisions |
Returns a collection of all report revisions for the specified report. |
GET api/reportserver/v2/reports/{reportId}/revisions/{revisionId} |
Returns a report revision by ID. |
GET api/reportserver/v2/reports/{reportId}/revisions/latest |
Returns the latest report revision. |
POST api/reportserver/v2/reports/{reportId}/revisions |
Adds a report revision to the specified report. |
DELETE api/reportserver/v2/reports/{reportId}/revisions/{revisionId} |
Deletes a report revision by ID. |
GET api/reportserver/v2/reports/{reportId}/shelve |
Gets the shelve data for the specified report The shelve data is the unpublished state of the report. |
PUT api/reportserver/v2/reports/{reportId}/shelve |
Creates a shelve for the specified report. Expects the report shelve bytes inside the content of the request. |
DELETE api/reportserver/v2/reports/{reportId}/shelve |
Deletes the shelve of the specified report. |
PUT api/reportserver/v2/reports/{reportId}/favorite |
Sets favorite flag for the specified report. |
DELETE api/reportserver/v2/reports/{reportId}/favorite |
Removes the favorite flag from the specified report. |
PUT api/reportserver/v2/reports/{reportId}/lock |
Locks the specified report. |
DELETE api/reportserver/v2/reports/{reportId}/unlock |
Unlocks the specified report. |
POST api/reportserver/v2/reports/{reportId}/publish |
Publishes the specified report. |
GET api/reportserver/v2/reports/{reportId}/parameters |
Gets the report parameters for the specified report. |
ScheduledTask
Endpoint for managing scheduled tasks.
API | Description |
---|---|
GET api/reportserver/v2/scheduledtasks |
Returns a collection of all scheduled tasks. |
GET api/reportserver/v2/scheduledtasks/{scheduledTaskId} |
Returns a scheduled task by ID. |
POST api/reportserver/v2/scheduledtasks |
Creates a new scheduled task. |
PUT api/reportserver/v2/scheduledtasks |
Updates a scheduled task. |
DELETE api/reportserver/v2/scheduledtasks/{scheduledTaskId} |
Deletes a scheduled task by ID. |
User
Endpoint for managing users, user roles and permissions.