cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

The New Generic ITAM REST API for querying any web report is available! A PowerShell example.

The New Generic ITAM REST API for querying any web report is available! A PowerShell example.

Disclaimer:

SOLUTIONS ARE PROVIDED ON AN "AS IS" BASIS. NEITHER FLEXERA NOR ITS SUPPLIERS MAKE ANY WARRANTIES, EXPRESS OR IMPLIED, STATUTORY OR OTHERWISE, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, TITLE, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. LICENSEE MAY HAVE OTHER STATUTORY RIGHTS. HOWEVER, TO THE FULL EXTENT PERMITTED BY LAW, THE DURATION OF STATUTORILY REQUIRED WARRANTIES, IF ANY, WILL BE LIMITED TO THE SHORTER OF (I) THE STATUTORILY REQUIRED PERIOD OR (II) THIRTY (30) DAYS FROM LICENSEE’S ACCEPTANCE OF THE AGREEMENT.

Flexera One ITAM data can now be extensively integrated with other applications, using the just released "ReportsExecute" REST API.

This API (available only in the Cloud Version of ITAM) allows you to get the output of any custom web report created from the Web Client by calling the ReportID (that you can get from the ReportsIndex REST API).

Filtering is allowed on any indexed columns (you decide which columns are indexed when you create the report) by the SearchText parameter, just like the "Search" filter would be applied in a report.

The output is in JSON format, that can be easily converted into csv for instance.

The API call has the following grammar (CURL):

https://api.flexera.com/fnms/v1/orgs/{orgId}/reports/{id}/execute?searchText=&limit=&skipToken=

Please note that the current "api.flexera" endpoint uses a Gateway that  has a timeout of 28 seconds, which could be an issue for calling reports. You can use the "beta.api.flexera" end point that is actually production already and will be the future endpoint (using a new Gateway) (It will be renamed api.flexera).

In the attached PowerShell example (that uses beta.api.flexera), an input allows to enter the report name. The script finds the Report ID, queries the report, brings the result back, loads all pages and converts to a csv file the output.

A screenshot below.

Enjoy collecting any ITAM data now!

 ReportsExecute API PowerShell.png

 

Labels (3)
Was this article helpful? Yes No
100% helpful (2/2)
Comments

Great that this is available for F1 . What about  On-premises? Are there any plans to backport this to On-premises?

@Ronny_OO7 - I am not aware of any plans to create a REST API for FNMS On-Premises.  Unlike Flexera One ITAM, with FNMS-OP you have direct access to the database to pull any data that you want.

thanks Kclausen.  Al tough you do have direct db acces many customers would like to see an API to integrate other products with FNMS. This is also because not everyone will get direct db acces and an API available from IIS FNMS webserver would be great then.Secondly for those customers who might migrate to F1 in the future it would save them developing things twice. 

@Ronny_OO7  totally agree!  We do not want to give direct database access to certain groups, and an API is the preferred method anyway.  Would love to have that for On Prem.

Chiming in to support API for On-Prem as well.

David - NTT DATA Services

If you're interested in similar APIs in FlexNet Manager Suite (on premises), please vote for the following Idea that is logged against this product to help the Flexera team gauge the level of interest: FNMS-I-197: Getting Custom reports Using REST API and option to have PowerBI connection

Hello everyone,

That's right providing API access to external parties in an on premise instance of FlexNet Manager makes sense.

I published a while ago this article for Cloud Customers to show sophisticated things could be performed using the GetCustomViewResult SOAP API... that works nicely on premise.

https://community.flexera.com/t5/FlexNet-Manager-Knowledge-Base/Allocation-Automation-Example-for-FNMS-Cloud/ta-p/5135

Please check the pre requisites (activation request etc) and you will be able to use it.

There is no plan to develop a REST API for on premise instances at this stage but take note of your request (and please vote for the idea indeed).

Best regards,

Nicolas

 

 

Hi @nrousseau1 - is that the correct link (Allocation Automation Example for FNMS Cloud)?  I briefly looked at the linked content and attachment and I didn't see mention of  GetCustomViewResult SOAP API.  Maybe I just missed it?

Thanks for responding.  I have already added my vote to the idea.

Best, David

Hello all, thanks for the valuable feedback.

This is a SOAP API but is accessed through a Business adapter instead of through a PowerShell script. So it will make it slightly more packable in terms of dependencies. Personally, I would still opt to go the PowerShell route for more flexibility.

Apart from the permission challenges there were 2 other major limitations to the SOAP API:
1. FNMS data exposure was limited to the report model (similar to how Analytics is limited to its data models)
2. There’s a limit on how many data you can return and there’s no pagination built-in:

The last one was a major issue at several customers since we were looking for a solution to expose the Compliance inventory for further BI but the connection errored out on massive data sets which was their (Enterprise Architects) main interest.
For the first limitation we now have a solution in custom report SQL procedures.

So we can actually expose more data for On-prem (either directly with db access or through SOAP API with custom report SQL procedures) in comparison to the new ITAM REST API, but are limited on the latter on the amount of data we can return.
@nrousseau1 Nicolas do you knows a way to overcome this? A solution to paginate the data returned via the SOAP API, thanks and Regards Ronald 

Hello @dmathias , Sorry, the document is not explicit on the fact it uses the GetCustomViewResult SOAP API. The embedded Business Adapter uses the API. Updating now (screenshot and text) the post to reflect this.

Thanks

NicolasAdapter.png

 

Hello @Ronny_OO7 ,

Thanks for the precise (as usual!) information!

The SOAP API is indeed not paginated and I don't know work arounds.

When it comes to exposing objects beyond web reporting objects (whcih the REST API does not do neither today...). There is a nice way that works and that we have just used with the Windows Server Optimization flat report...

  • Create the SQL Procedure for the report
  • Create the report... set up the searchmapping xml to match the final select statement of the SQL stored procedure

What I don't know is if using a SQL report that has no row limitations can lead to removing the limit on the query output. That said, I would be cautious has developers told me the SOAP API was brutal with loading the full data set and not paginating...

Best regards,

Nicolas

Example of Searchmapping xml:

<ArrayOfCustomViewColumnMapping> 

  <CustomViewColumnMapping> 

    <Column ColumnName="DeviceName" DefaultFilterType="2" /> 

    <Index>1</Index> 

    <FieldName>DeviceName</FieldName> 

    <ShowInGrid>true</ShowInGrid> 

  </CustomViewColumnMapping> 

  <CustomViewColumnMapping> 

    <Column ColumnName="DeviceType" DefaultFilterType="2" /> 

    <Index>2</Index> 

    <FieldName>DeviceType</FieldName> 

    <ShowInGrid>true</ShowInGrid> 

  </CustomViewColumnMapping> 

  <CustomViewColumnMapping> 

    <Column ColumnName="DeviceRole" DefaultFilterType="2" /> 

    <Index>3</Index> 

    <FieldName>DeviceRole</FieldName> 

    <ShowInGrid>true</ShowInGrid> 

  </CustomViewColumnMapping> 

  <CustomViewColumnMapping> 

    <Column ColumnName="OperatingSystem" DefaultFilterType="2" /> 

    <Index>4</Index> 

    <FieldName>OperatingSystem</FieldName> 

    <ShowInGrid>true</ShowInGrid> 

  </CustomViewColumnMapping> 

</ArrayOfCustomViewColumnMapping> 

 

HI

has anybody executed this and come up with JSON Serialization errors?

cheers

@nrousseau1  - Might want to update your script, $results is not getting updated with the data from $nextPage

Hi @nrousseau1 is it possible to get the results of the Application Transparency Report through API now? @shill2 

has anyone really looked closely at <your web url>/ManageSoftServices/ComplianceAPIService/ComplianceAPIService.asmx 
soap based api 
it may not be turned on in your license. 

under the ManageSoftServices in IIS on the WebUI server. 

@jq3i4h9u - unfortunately there is not currently any API that can be used to retrieve the exact data shown in the Application Transparency report. The API discussed in this post is focused on retrieving data from custom reports that users have configured, not built-in reports or other UI pages.

Version history
Last update:
‎Oct 07, 2022 02:48 PM
Updated by:
Contributors