Building this integration involves writing scripts or code snippets that interact with the Fuse’s APIs, enabling seamless retrieval of reports based on specified parameters.
To utilise this integration, you must do the following:
Step 1: Create a custom report
As a Fuse site admin, go to the Admin Panel and click Reporting (Beta).
In the Create a custom report section, select a custom the report you wish to create, ensuring that you give it a easily recognisable title and that you have applied the desired filters so that it contains the data you need. For more information on how to create a custom report, see Creating a custom https://fuseuniversal.atlassian.net/wiki/spaces/customerwiki/pages/3603726343/Creating%2C+scheduling%2C+and+sharing+a+custom+report.
Step 2: Share the title or ID of the report
Once you have created the custom report, share either the title of the report or the report ID with the person in your organisation responsible for building integrations the integration via RESTful API.
The title of the report you have created can be obtained in the Custom reports list in the Custom reports screen:
You can obtain the ID of a report by editing it and copying the ID from the URL. For information on how to edit a report, see Editing an existing report.
Step 3: Building the integration via API
Once the person responsible for building the integration has the title or ID of the custom report, they can start the process of building the integration using Fuse’s RESTful APIs, and to retrieve the designated report data. To do this, they must have access to the necessary RESTful API endpoints listed below.
Building this integration involves writing scripts or code snippets that interact with the Fuse API, enabling seamless retrieval of reports based on specified parameters.
Required API endpoints
...
GET: Retrieve the details of a report using the report title
The following GET
request can be used to obtain retrieve the details of a report using the report :title.
GET /compliance_reporting/reports/all
...
Code Block |
---|
{ "total_count": 1, "last_page": true, "reports": [ { "title": "Title of Report", <---- Title of the report "id": 987654321, <---- ID of the report "report_created_by": "Report Owner", "created_at": "2024-02-22T12:05:58.000Z", "report_type_code": "learning_plan_status_custom", "tag": "Learning plan report", "executions": [ { "execution_id": 12345678, <---- Execution ID of the report "started_at": "2024-02-26 23:01:48", "report_executed_by": 12040315, "report_status": "success", "report_download_url": "https://fusion-universal-assets-production.s3-eu-west-1.amazonaws.com/report-engine/xxxxxx" }, ] } ] } |
Info |
---|
Notes:
|
...
|
Note |
---|
The download URL provided in the report_download_url section of the response body is used for the CSV download, and is only valid for 1 hour (60 mins) after the report URL has been generated by the API. Example: |
...
GET: Retrieve a signed AWS download link to download the latest execution ID
The following GET
request can be used to retrieve the a signed AWS download link, containing the latest execution ID for a report.
GET /compliance_reporting/download_report/{execution_id}
...
Note |
---|
The download URL provided in the report_download_url and signed_download_url sections section of the response body are , used for the CSV download, and are is only valid for 1 hour (60 mins) after the report URL has been generated by the API. Example: |
...
|
...
POST: Regenerating a report
This POST
request can be used to regenerate a particular report by specifying the report ID.
POST: /compliance_reporting/reports/regenerate
POST: https://<instance_name>>.fuseuniversal.com/api/v4.4/compliance_reporting/reports/regenerate?auth_token=<valid_auth_token>
The above will return the following:
Code Block |
---|
{
"success": true
} |
Note |
---|
Regenerating a report also generates a new execution_id, so please ensure that you run the |
...
GET: Retrieving a list of executions for a particular report
The following GET
request allows you to retrieve a list of executions for a particular report.
GET: /compliance_reporting/{report_id}/executions
GET https://<instance_name>>.fuseuniversal.com/api/v4.4/compliance_reporting/<report_id_goes_here>/executions?auth_token=<valid_auth_token>
The above will return the following:
Info |
---|
The executions are shown in descending order, with the latest execution_id appearing at the top of the response body. |
Code Block |
---|
{
"total_count": 2, <-- Number of executions for particular Report
"last_page": true,
"executions": [
{
"id": 1883,
"title": "Title/Name of report", <-- Title/Name of report
"report_executed_by": "steve.jobs@contoso.com", <-- Who executed the latest run
"started_at": "2024-03-15T08:32:29.000Z", <-- date of report execution/regeneration
"report_executed_status": "success"
},
{
"id": 1807,
"title": "Title/Name of report", <-- Title/Name of report
"report_executed_by": "steve.jobs@contoso.com", <-- Who executed this run
"started_at": "2024-03-08T09:57:29.000Z", <-- date of report execution
"report_executed_status": "success"
}
]
} |
...