Product: SQL Server Reporting Services (SSRS) REST API v2.0
API Endpoint: /reports({id})/ParameterDefinitions
Swagger Documentation: https://app.swaggerhub.com/apis/microsoft-rs/SSRS/2.0#/Reports/GetReportParameterDefinitions
Issue Summary
The SSRS REST API GetReportParameterDefinitions endpoint does not properly resolve dependent parameters when parent parameter values are provided via query string, resulting in empty ValidValues arrays for dependent parameters.
Expected Behavior
When calling the ParameterDefinitions endpoint with parent parameter values as query parameters, dependent parameters should have their ValidValues populated and ParameterState should change from "HasOutstandingDependencies" to "MissingValidValue".
Actual Behavior
Dependent parameters maintain "HasOutstandingDependencies" state with empty ValidValues array, regardless of parent parameter values being provided.
Steps to Reproduce
- Create an SSRS report with cascading parameters where Parameter B depends on Parameter A
- Call GET
/reports({reportId})/ParameterDefinitions without parameters
- Observe Parameter A has populated ValidValues, Parameter B shows "HasOutstandingDependencies" with empty ValidValues
- Call GET
/reports({reportId})/ParameterDefinitions?ParameterA=ValidValue using a valid value from Parameter A
- Observe Parameter B still shows "HasOutstandingDependencies" with empty ValidValues
Sample Request
GET http://server/reports/api/v2.0/reports(73a696a4-f89c-4013-811a-d049d75a0b8d)/ParameterDefinitions?DESCCLIDESP=71876610
Sample Response (Problem)
{
"Name": "DESCMAT",
"ParameterState": "HasOutstandingDependencies",
"ValidValuesIsNull": true,
"ValidValues": [],
"Dependencies": ["DESCCLIDESP"]
}
Expected Response
{
"Name": "DESCMAT",
"ParameterState": "MissingValidValue",
"ValidValuesIsNull": false,
"ValidValues": [
{"Label": "Product 1", "Value": "P001"},
{"Label": "Product 2", "Value": "P002"}
],
"Dependencies": ["DESCCLIDESP"]
}
Impact
This limitation forces developers to:
- Fall back to legacy SOAP web services (ReportService2010.asmx)
- Implement workarounds that bypass the REST API
- Unable to build modern applications that rely solely on REST API for report parameter handling
Attempted Workarounds
- Tried POST method with parameter values in request body - not documented or supported
- Query string parameter passing (current approach) - fails as described above
- Multiple API calls with different parameter combinations - same result
Request
Please implement proper dependency resolution in the REST API GetReportParameterDefinitions endpoint to match the functionality available in the SOAP web service, allowing dependent parameters to populate their ValidValues when parent parameters are provided.
Environment
- SSRS Version: 2022
- API Version: 2.0
- Report with cascading parameters configured with query-based valid values
Additional Technical Details
Initial API Response (Working - Parent Parameter)
{
"Name": "DESCCLIDESP",
"ParameterType": "String",
"ParameterState": "MissingValidValue",
"ValidValuesIsNull": false,
"ValidValues": [
{"Label": "ACME CORPORATION", "Value": "71809510"},
{"Label": "GLOBAL INDUSTRIES LTD.", "Value": "71876610"}
],
"Dependencies": []
}
Current API Response (Broken - Dependent Parameter)
{
"Name": "DESCMAT",
"ParameterType": "String",
"ParameterState": "HasOutstandingDependencies",
"ValidValuesIsNull": true,
"ValidValues": [],
"Dependencies": ["DESCCLIDESP"]
}
The dependent parameter remains in "HasOutstandingDependencies" state even when parent parameter value is provided via query string, preventing proper cascading parameter functionality through the REST API.