Loading

API

Skip Feed
  1. API connection possibility

    Hello Flexera Community,

    I would like to check if an API connection is possible from my FNMS On-Premises instance. I can see that the API connection option is available, but I would like to confirm whether it is exposed for public use.

    Additionally, I would like to know if this API can be used to extract data and share it with other platforms within my organization.

    Expand Post

  2. Is there documentation for the API that queries urls ending with flexnetoperations.com?

    Forgive me if this is obtuse -- I am a client of a Flexera client and have no direct knowlege of what are the actual product name that in use here -- only the URL.

     

    It is a cloud licensing scheme for their product suite. For monitoring license usage I was provided with a username and password to a URL on a site ending with flexnetoperations.com.

     

    In that website, branded with the logo fo the product we use, after a lot of clicking, I can get to a list of machines that have licenses in use under a site code. Then I have to click on each machine to see which of the three possible products are being used.

     

    I want to integrate this into our Slack along with all the other licenseing systems we use and so I need to be able to get this information in a textual way from a non-Windows environment.

     

    Using the browser development tools, I have been able to write a bash script to authenticate and retrieve some of the old-style list pages.

     

    However, the new, live, good stuff is behind these "react" api contstructs and no matter how closely I duplicate the behaviour in the browser I still can only get it to give me back either

     

    "Full authentication is required to access this resource"

     

    or

     

    "API call failed:An unexpected error occurred."

     

    depending on which kluged-together cURL command I use.

     

    Am I on the right track posting here looking for clarification and, ideally, documentation?

     

    Thanks for your patience!

    Expand Post

  3. Deprecation Notice: Legacy Open Source Datasets in IT Visibility

     

     

    With the introduction of Flexera’s improved IT Visibility with Technology Intelligence Platform solution, we would like to inform you that the following four Open Source datasets from the legacy IT Visibility offering will be deprecated effective October 10, 2025:

    These datasets are currently available via the Queries API, Parquet API, and Data Export download options.

    Flexera is actively working on a more advanced and integrated open-source data solution within the new platform.

     

    If you have any questions or need support during this transition, please contact us at support@flexera.com.

     

    Thank you for your understanding and continued partnership.

     

     

    Expand Post

  4. Why am i getting "Salt is not at least eight bytes" when trying to access the /api endpoint?

    We have the Snow Lincense Manager and i want to pull some data with the api, which according to the documentation should be at slm.<company.com>/api, and that you should supply the username and password as base64 encoded. When i do so i get error code 500 saying: "Salt is not at least eight bytes". I have also tried accessing the /api endpoint through the browser and encountering the same problem.


    • Detlev Eufinger (Flexera Software)

       

      Ensure your request includes a properly formatted Authorization header:

       

      Authorization: Basic <base64(username:password)>

       

      The username:password string must be correctly base64-encoded.

      Avoid encoding just the username or password separately.

       

      If Windows Authentication is enabled for the SLM site, it can interfere with API access.

      • You must:Disable Windows Authentication in IIS for the /api path.
      • Enable Anonymous Authentication for the API endpoint.

       

       

      Expand Post

  5. Some customers may have a need to add custom contextual data to their IT Visibility devices (for example, you might want to associate the assigned user to each of your inventory devices) or to Software Products in Technopedia (for example, you might want to label specific applications as being "preferred" or "prohibited", etc.). To enable this, Flexera has a Contextual Data Store API. However, this may not be the easiest API to use, especially if you're just starting out. To try to make this easier to use, I have created a PowerShell script and a couple modules that wrap this API into simple cmdlets and a basic guided user experience. It can be run interactively with some basic UI or completely automated for scheduled uploads using command line parameters.

     

    I'm still working on the comment-based help and some more detailed instructions, but I've had a few people asking for this, so I wanted to get it posted in its current state, so others can use it. I welcome feedback and contributions from the community, so please feel free to make suggestions for improvements. At some point, I hope to get this published in GitHub to make it easier to share updates and allow the community to contribute their own enhancements, but for now, here it is.

     

    Instructions:

    You'll need to download the attachments into a folder and modify the Upload-ContextData.config file with your own settings. Specifically, uncomment the appropriate RegionTLD setting (stands for Region Top Level Domain) that matches the region where your Flexera One org resides (com for North America, eu for EMEA, or au for APAC). Simply remove the # in front of the setting you want to use and make sure the other RegionTLD lines have the # in front of them. For example, if my Flexera One org resides in EMEA, my settings would look like this...

     

    #RegionTLD=com

    RegionTLD=eu

    #RegionTLD=au

     

    Next, make sure you update the OrgID to match your organization ID. This is the numeric value that appears in the address bar after /orgs/ like this...

     

    https://app.flexera.au/orgs/12345/landing

     

    All other settings in this config file are optional. Here is the full list:

    • DebugLogging - not really implemented
    • FileRetentionDays - Each run of the script creates a new log file. This setting controls how long to retain those logs. A negative value will retain all logs indefinitely. A value of 0 will remove all previous logs each time you run the script. A positive value will delete any previous logs older than the specified number of days each time you run the script.
    • RegionTLD - already discussed above. Either com (North America), eu (EMEA), or au (APAC)
    • OrgID - already discussed above. Needs to match your Flexera One org ID
    • MaxRetries - specifies the number of times to retry an API call if it fails
    • RetryIntervalSeconds - specifies how many seconds to wait in between retries if MaxRetries is greater than 0
    • SmtpServer - specifies an SMTP relay server that can be used to send email messages
    • SmtpPort - specifies the port number to be used for sending email through the SMTP relay server
    • UseSSL - specifies if SMTP communication should enforce SSL (TLS) encryption
    • MailFrom - specifies the sender email address
    • MailTo - specifies one or more email addresses to send email messages to (semi-colon delimited)
    • EnableFailureEmail - Boolean value specifying if an email message should be sent when a failure occurs
    • EnableSuccessEmail - Boolean value specifying if an email message should be sent when the script runs successfully without errors

     

    Note: the Send-Email function only works if you have an internal SMTP relay that supports basic authentication. However, the Send-Email function does not currently support M365/Exchange Online with its recent requirement for modern authentication.

     

    After you've configured your settings, you can run the Upload-ContextData.ps1 script. Running it without any command line parameters will prompt you for the needed information and guide you through the process to create a new contextual data source or to upload a contextual data file. The first time you run the script, you'll also be prompted to enter your Refresh Token for authentication with Flexera One. If you don't already have a refresh token, you'll need to generate one. This token will be encrypted and stored in a file in the same folder with your script and will be used to automatically authenticate on subsequent runs of the script. This encrypted file is specific to the user running the script and the system on which the script is being run. It cannot be used or decrypted by any other user or on any other system.

     

    Note: This PowerShell module was written to support either user-based Refresh Token authentication or service account-based Client Credential authentication; however, the API does not currently support the service account-based Client Credential authtentication. This is being worked on in Q1 2025, and once the API supports it, the script will be able to use it without modification. You'll just need to delete your CRED file and run the script again to choose the Client Credential option.

     

    That's it for now. I hope you find this useful.

    Expand Post

  6. Missing property "MostFrequentUser" in Atlas API?

    Hi,

    According to the documentation (https://docs.snowsoftware.io/snow-atlas-api/resources/sam-core-apis/computers#tag/Computers/operation/computers) the Get-Computer end-point should include a property "mostFrequentUser".

     

    This is however not the case. When getting the response back from the end-point, there's not such property. Below is an example response that I get when querying the end-point.

     

    Can I get some help please?

     

    {

    "_links": [

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2",

    "method": "GET",

    "rel": "self"

    },

    {

    "href": "sam/estate/v1/computers",

    "method": "GET",

    "rel": "collection"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/environment-variables",

    "method": "GET",

    "rel": "environment-variables"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/registry",

    "method": "GET",

    "rel": "registry"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware",

    "method": "GET",

    "rel": "hardware"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/cpu",

    "method": "GET",

    "rel": "processor"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/cpu/socketmap",

    "method": "GET",

    "rel": "socketmap"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/harddrives",

    "method": "GET",

    "rel": "disks"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/disks/logical",

    "method": "GET",

    "rel": "logicaldisks"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/applications",

    "method": "GET",

    "rel": "applications"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/logonhistory",

    "method": "GET",

    "rel": "logon-history"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/monitors",

    "method": "GET",

    "rel": "monitors"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/hardware/displayadapters",

    "method": "GET",

    "rel": "displayadapters"

    },

    {

    "href": "/api/sam/estate/v1/computers/f812f2b0-44e1-47db-9897-4d09aa43f5d2/metering",

    "method": "GET",

    "rel": "metering"

    }

    ],

    "architecture": "64-bit",

    "biosDate": "2018-08-02T00:00:00Z",

    "biosSerialNumber": "SN-CORP0143A17",

    "biosVersion": "R02ET67W (1.40 )",

    "clientConfigurationName": "Default Configuration",

    "clientInstallDate": "2018-10-07T00:00:00Z",

    "clientSiteName": "SNOW",

    "clientVersion": "5.2.1",

    "coreCount": 2,

    "domain": "CORP",

    "hostName": "CORP0143A17",

    "id": "f812f2b0-44e1-47db-9897-4d09aa43f5d2",

    "infoTransferDate": "2019-04-07T19:18:34.907Z",

    "ipAddress": "10.0.41.42",

    "is64bit": true,

    "isAutoEditingDisabled": false,

    "isPortable": true,

    "isQuarantineManagementDisabled": false,

    "isServer": false,

    "isUpdated": false,

    "isVdi": false,

    "isVirtual": false,

    "lastScanDate": "2024-12-19T00:00:00Z",

    "manufacturer": "LENOVO",

    "manufacturerWebsite": "https://www.lenovo.com",

    "model": "ThinkPad X260",

    "operatingSystem": "Windows 10 Pro",

    "operatingSystemId": "8aa9240d-8c2f-4d1f-816e-48f574890904",

    "operatingSystemSerialNumber": "AAAAA-BBBBB-CCCCC-DDDDD-EEEEE",

    "operatingSystemServicePack": "",

    "processorCount": 1,

    "purchaseCurrency": "EUR",

    "purchaseDate": "2018-06-17T07:06:25Z",

    "purchaseValue": 820,

    "purchaseValueBase": 820,

    "reportingDate": "2019-01-10T07:06:25Z",

    "scannerVersion": "",

    "status": "Active",

    "updatedDate": "2023-10-30T08:10:39.183Z"

    }

    Expand Post

    1 of 2
    • Thanks,

      looking forward to hear back as soon as all access is resolved.

       

      I've raised a ticket: 02978963

       

      Kind regards,

      David

      Expand Post

End of Feed
8 Chatter Feed Items
ALL CONVERSATIONS
UNSOLVED
ARTICLES
20 Posts
Loading
API | Flexera