SaaS Management offers an Import Jobs API that helps you:
- Add a SaaS application not currently supported by SaaS Management through a direct integration for rightsizing
- Add and view Single Sign-On (SSO) data for rightsizing and optimization from any SSO provider
The following topics explain how to load SaaS data via the Import Jobs API.
- Import Jobs API Workflow
- Model Relationships
- Required Flexera One Roles and Privileges
- Adding a Managed SaaS Application
- SaaS Data Payload
If you need help obtaining credentials, see the (Authentication section).
The workflow to create an import job properly is the following:
- Add a Managed Application
- Create a SaaSData object.
- Upload a file to the SaaSData object via a PATCH request.
- Create an ImportJob with the previously created SaaSData object.
The import job will automatically begin once the job is created.
To view the OpenAPI (Swagger) documentation, refer to the (Import Job API).
The workflow diagram and steps below explain at a high level how SaaS data is loaded into SaaS Management via the Import Jobs API.
- Create a service account via one-time API calls to api.flexera.com or api.flexera.eu based on the geographic region of your org (For details, see API Endpoints). You will enter these credentials into your custom application or middleware.
- Create a managed application in SaaS Management to load SaaS data into.
- Create a custom middleware or set up a custom middleware via a services agreement. The custom middleware then retrieves the SaaS data from a given source, typically an API.
- The custom middleware compresses the retrieved data, uploads the compressed file to api.flexera.com or api.flexera.eu, and creates the import job based on the files.
- The file is upload to an internal storage location where it is kept for 30 days.
- The creation of an import job automatically submits the job into the processing pipeline.
- The import processing pipeline then reads from the internal storage to retrieve the raw SaaS data.
- The processing pipeline decompresses, validates, and normalizes the data for continued processing.
- The SaaS Management analytics system receives the normalized message and performs the requisite analytics tasks.
- The results are stored in the processed data store where they are retrieved from by SaaS Management.
The table below explains the models used for the Import Jobs API.
|Application||An application by a software publisher or vendor|
|Managed Application||A managed instance of an application|
|App User||Processed application user data|
|App Usage||Processed application usage data|
|Import Jobs||A container representing the process of importing of SaaS data|
|SaaS Data||The raw compressed data files|
The diagram below shows how each of the models relate to each other. The data processing pipeline that ingests the import jobs creates the app usage, app user, and all other data within the SaaS data objects. The processed data is then associated directly with the managed application and not to the import job or the SaaS data object they came from.
The following are the roles and privileges you can add to service accounts or user accounts to utilize the import job API.
It is recommended to assign the following role to your service account that will perform the SaaS data import. Creating a service account role minimizes credential maintenance. Assigning this role limits the service account to perform only the intended task. The Import Jobs API can also be accessed via user credentials as well. If you are developing this integration, your user must also have one of the following User Account Roles. For more information on assigning roles, see Adding New Users or Editing User Groups to Apply Roles at Organization or Account Level.
|Manage SaaS Import APIs||Read and edit access to create and manage SaaS import jobs via API. Administrators should assign SaaS import job service accounts to this role.|
These roles are not intended to be assigned to a service account as they are specifically for users. For more information on the SaaS Management privileges for these user account roles, see the Flexera One Roles.
|Manage SaaS applications & users||Full access to all pages within the applications section of the SaaS navigation, except for unsanctioned spend. A user with this role also has access to all pages of the Users section. This access includes the ability to read, create new, edit, and delete where applicable.
This role has all of the privileges to Manage SaaS Import APIs.
|View SaaS||Read-only access to view SaaS dashboard, team members screens and all pages within the applications and user serctions of the SaaS Navigation. This user has no creation, editing, or deletion abilities.
This role can retrieve import jobs and SaaS Data but cannot create import jobs.
|Read-only access to view SaaS dashboard, team members screens and all pages within the applications and users sections of the SaaS Navigation. This user has no creation, editing, or deletion abilities.|
To add a managed SaaS application in SaaS Management, perform the following steps.
- Complete the steps in Adding an application to your organization’s list of Managed SaaS Applications.
- When prompted to add the SaaS application’s license information, it is recommended to enter the license information if you have it available. Otherwise, you can enter the license information later.
- Note the URL for the newly created managed SaaS application. You will need this URL to set up your cloud storage environment.
- The org id is located after the /orgs path.
- The managed app id is located after the /managed-products (legacy term).
https://app.flexera.com/orgs/123456/saas/managed-products/987654 where the org id is
123456, and the managed app id is
Important: The Managed App Id is required when creating an import job. All import jobs are directly associated with a managed application.