...
Currently, Sunbird Observation supports Reports Service API to list and access all published reports. However, only metadata of a report is accessible through this API. There are associated data files that contain the detailed data of a given report. These are currently not accessible through API.
There is an internal endpoint at the portal backend layer which downloads the respective datasets from the azure reports container. This endpoint is accessible only by the logged in person(session based) having roles (REPORT_ADMIN , REPORT_VIEWER, ORG_ADMIN).
Moreover, there is a slug based validation so that they do not access other tenant’s data.
For parameterized reports, respective endpoints are injected based on the logged in user’s context.
As part of current implementation datasets cannot be accessed by non logged in person or any third party.
Supported parameters
$slug
$channel
$state
$board
...
Current Report Config Structure
Expand | ||
---|---|---|
| ||
|
New Column Additions
visibility
type - varchar(10)
enum - [public, private, protected, parent]
Details - Link
accessPath
type - jsonb
Details - Link
...
Current Api Structure
...
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
Proposed response structure - to get meta + datasets.
Explaination -
|
...
Access Control Spec
Controls who can access a report based on certain rules.
This can be achieved using two attributes visibility and accessPath.
...