API Documentation
NOTE: The information contained in this document will eventually be available on the uperformhelp.ancile.com site listed below, and that site should be considered the official, permanent documentation for using the APIs. Refer to https://uperformhelp.ancile.com/hc/en-us/articles/360041395291-Managing-API-Access-Keys for summary information and steps to create an API Key.
The online documentation contains information for different versions of the product. Select “Cloud – 5.43 User Mgmt” in the dropdown selector to see the API Key information.
Request Authorization
All API requests are authorized by an API Key which must be provided in an “authorization” header whose value is: Ancile-Api-Key APIKeyValue
Where APIKeyValue is obtained when you create an API key in the system.
uPerform Analytics APIs
There are several analytics-related APIs available for external use and are described below. All API responses are in json format. A typical flow of using the APIs would be:
1. Use the Reports endpoint to get list of all available reports including name and ID.
2. Use the Reports/{id} endpoint to get details about a specific report, including data that must be provided when requesting the results of a specific report.
3. Use the Reports/{id}/Results endpoint to run the report and retrieve paginated set of results.
Get - Reports
Returns a list of all reports defined in the system including the ID value for each report. The ID value is required to request details about a report.
API format: https://LearningLibraryFQDN/api/analytics/v2/Reports
URL item |
Description |
LearningLibraryFQDN |
The fully qualified domain name of your Learning Library instance. For example, if your Learning Library URL is https://acme.ancileuperform.com/#/, you would use acme.ancileuperform.com |
Optional Query String Parameters
Parameter |
Description |
Notes |
search |
Text to match in Name of report |
|
limit |
Defines the maximum number of items to be returned in initial response |
If undefined, default is 10 |
Offset |
The number of items skipped before returning records in the response |
If undefined, default is 0 |
Response Example
Response Attributes
Attribute |
Description |
Notes |
itemCount |
The number of items in the current response |
|
offset |
The number of items skipped before returning records in the response. Response is repeating the offset value sent in the request |
|
pageNumber |
If combination of total, limit, and offset values results in pagination, this reflects the current page value |
|
limit |
Defines the maximum number of items to be returned. Response is repeating the limit value sent in the request |
|
total |
Total number of items available |
|
first/prev/next/last |
When the total – limit is greater than zero (e.g. pagination of results is necessary), the response will include necessary request URLs to support pagination of the results |
|
items |
Array of items returned by the search |
|
The following attributes exist for each item in the Items array. |
||
href |
URL to use for requesting data about specific report |
|
Id |
The identifying number of the report |
|
name |
The name of the report |
Value always included in the response |
description |
The description of the item |
Value included if defined in the report |
select |
Comma-separated list of properties included in the report |
Value always included in the response |
filter |
Filters defined in the report. |
Value included if defined in the report. Filters may use fixed or variable values. Variable filters are listed with Var1, Var2, etc... syntax. |
modifiedDate |
Date report was last modified |
|
Get – Reports/{id}
Returns details about a single report, including any variable filters for which values must be defined when requesting results for a given report using the Reports/{id}/Results endpoint. When a report is created in the Management Center with one or more filters, each filter can be fixed or variable.
API format: https://sdig-preview.ancileuperform.com/api/analytics/v2/Reports/{id}
URL item |
Description |
LearningLibraryFQDN |
The fully qualified domain name of your Learning Library instance. For example, if your Learning Library URL is https://acme.ancileuperform.com/#/, you would use acme.ancileuperform.com |
{id} |
The numeric identifier for the report to be run. This is obtained from a request to the Reports endpoint. |
Response Example
Response Attributes
Attribute |
Description |
Notes |
||
name |
The name of the report |
Value always included in the response |
||
description |
The description of the item |
Value included if defined in the report |
||
select |
Comma-separated list of properties included in the report |
Value always included in the response |
||
filter |
Filters defined in the report |
Value included if defined in the report. Filters may use fixed or variable values. Variable filters are listed with Var1, Var2, etc... syntax. |
||
appliedTemplate |
The id of the template defined in the report. |
Value included if defined in the report. |
||
appliedTemplateName |
The name of the template defined in the report. |
Value included if defined in the report |
||
defaultReport |
|
Not relevant for external use of the API |
||
modifiedDate |
Date report was last modified |
|
Get – Reports/{id}/Results
The /Results endpoint returns results for a given report. Values for any variable filters defined in the report must be included in the Results request. Variable filters can be identified by Var{number} in the response of a request to the Reports/{id} endpoint (documented above).
API format: https://LearningLibraryFQDN/api/analytics/v2/Reports/{id}/Results?Var1=[‘valueA’,’valueB’]&Var2=[‘valueC’]&var3=%valueD%&var4=%valueE%
URL item |
Description |
LearningLibraryFQDN |
The fully qualified domain name of your Learning Library instance. For example, if your Learning Library URL is https://acme.ancileuperform.com/#/, you would use acme.ancileuperform.com |
{id} |
The numeric identifier for the report to be run. This is obtained from a request to the Reports endpoint. |
Var{x} |
For each variable filter defined in the report, you must include a parameter/value pair in the query string of the request. For our example above, the report contains four variable filters so the query string must include: The syntax for the filter value(s) varies depending on whether that filter identifies a property with a fixed list of possible values or one with free-form values. For any filter, use a comma separated list when you need to define multiple values For free-form filters, the filter value is wrapped in % characters. In the example above Var3 shows syntax when you want to include multiple values for the filter in the report, while Var4 shows the single value syntax. |
Optional Query String Parameters
Parameter |
Description |
Notes |
limit |
Defines the maximum number of items to be returned in initial response |
If undefined, default is 25 |
offset |
The number of items skipped before returning records in the response |
If undefined, default is 0 |
Response Example
Request: https://sdig-preview.ancileuperform.com/api/analytics/v2/Reports/6167/Results?Var1=['1.25.301','1.25.2102','1.25.1004','1.25.2101']&Var3=%task%&Var2=%requisition%
Response
Response Attributes
Attribute |
Description |
Notes |
itemCount |
The number of items in the current response |
|
offset |
The number of items skipped before returning records in the response. Response is repeating the offset value sent in the request |
|
pageNumber |
If combination of total, limit, and offset values results in pagination, this reflects the current page value |
|
limit |
Defines the maximum number of items to be returned. Response is repeating the limit value sent in the request |
|
total |
Total number of items available |
|
first/prev/next/last |
When the total – limit is greater than zero (e.g., pagination of results is necessary), the response will include necessary request URLs to support pagination of the results |
|
items |
Array of items returned by the search |
The specific attributes included in the report for each item will vary depending on the type of report run and the properties included in the report. |