Introduction

Torii supports more than 100 out-of-the-box integrations with SAAS apps. However, what about apps Torii does not integrate with yet? This is not a limitation - we allow adding custom integrations. You can build your own integration with just a few clicks and then push user and license data into Torii using our robust API.

We recommend using custom integration functionality to connect your on-prem and home-grown apps and manage all your apps in one single place. Few examples of how can you benefit from connecting non-integrated apps to Torii:

  1. Manage user off-boarding from any software in Torii. Once all apps used in an org are connected to Torii, you will be able to configure off-boarding methods for all apps users are assigned to. If an app has an open API, you will be able to automate off-boarding through custom action.

  2. Run robust workflows for any app. For example, you can configure a workflow that sends notifications when a number of unassigned licenses for the on-prem app pass a certain threshold, and then make sure you purchase more licenses in advance.

How does it work?

To use custom integrations, simply follow these steps:

  1. Create a new custom integration in Torii by clicking the "ADD CUSTOM INTEGRATION" tile located at the bottom of the Integrations page. Then select the application you wish to integrate.

You can also create custom applications via this popup and integrate them.

2. Copy the unique app account ID. Make sure you store this ID as it is required later in the process.

You will see a new app tile added to "Your custom integrations" section after you close the popup. The tile shows app account name, last sync time and unique app account ID,

3. Use our public API to upload your data file and sync it with Torii. The file must include users list and can include licenses list. Read how to upload files using Torii public API and see further details in the File schema section below.

Things you should know

  • The only valid file format is JSON.

  • Each file goes through a validation process where it is validated against a dedicated schema (see below)

    • A response is sent once the validation is complete and indicates whether it was successful or not.

      • For invalid files, the response also includes a brief report of the invalid fields.

      • Valid files are sent to further processing. This process may take up to several minutes. Once it's finished, you will see the data in Torii.

  • Each time a new file is sent, app users and license data is overwritten. To update app existing user properties (e.g. last used date or role), update these in JSON file and resync it with Torii. To remove users from the app, remove them from the file, and then resync it with Torii. Make sure to sync the data regularly in order to have the most updated information in Torii.

File schema

The file should include the following information. Note that fields must have the exact field name as shown in the following table:

Field Name

Description

Type

Required

users

Users using the application

User[]

(see user object below)

Yes

licenses

Licenses used in your org

License[]

(see license object below)

No

User

Field Name

Description

Type & Options

Required

email

Unique email

String

Yes

firstName

First name

String

No

lastName

Last name

String

No

status

The status of the user in Torii. Only active users are displayed as users of the application

Enum (active/deleted)

Default: active

No

externalStatus

The status of the user as it appears on the application’s site

String

No

roles

Roles

String[]

No

lastUsedDate

Last date user used the application

Date

ISO 8601 (YYYY-MM-DD)

No

License

Field Name

Description

Type & Options

Required

name

Unique name

String

Yes

unassignedAmount

Number of licenses that are not assigned to users

Number

No

users

Users under this license

licenseUser[]

(see licenseUser object below)

No

pricePerUser

How much does it cost per user

Number
Units: cents
(e.g. $35.2 should be sent as 3520)

No

License User

Field Name

Description

Type & Options

Required

email

User's email

String

Yes

licenseStatus

License status.

If not provided, will be defined by user status

Enum

(active/inactive/deleted)

No

You can always contact our support team for help at support@toriihq.com.

Did this answer your question?