Skip to content

You are viewing documentation for Immuta version 2021.4.

For the latest version, view our documentation for Immuta SaaS or the latest self-hosted version.

Admin API

Audience: System Administrators

Content Summary: This page outlines the admin endpoint, which allows you to manage and review licenses in Immuta.

Note

Additional fields may be included in some responses you receive; however, these attributes are for internal purposes and are therefore undocumented.

Admin Workflow

  1. Add an Immuta license key to increase the number of seats or enable features.
  2. View a list of license keys.
  3. View the status of license seat capacity and features.
  4. Delete a license key.

Add an Immuta License Key

Endpoint

Method Path Purpose
POST /admin/license Add a license key to the Immuta instance to increase the number of seats or enable features.

Query Parameters

Attribute Description Required
LicenseKey string The license key, as a payload. Yes

Response Parameters

Attribute Description
LicenseKey string The license key.
ID integer The ID of the license.
UUID string The unique universal identifier.
Features array The features included in the license.
Handlers array The data handlers included in the license.
Expires timestamp The date the license expires.
Seats integer The number of user seats available.
CreatedAt timestamp The date the license key was generated.
Notice string This notice appears on the login page.
NoticeOnExpire string This notice appears on the login page after the license expires.

Request Example

This example request adds a license key (saved in the example-payload.json file) to the Immuta instance.

curl \
    --request POST \
    --header "Content-Type: application/json" \
    --header "Authorization: Bearer dea464c07bd07300095caa8"
    --data @example-payload.json \
    https://demo.immuta.com/admin/license

Request Payload Example

{
  "licensekey": "licensekey0123456789abcdefghijklstring"
}

Response Example

{
  "id": 1,
  "licenseKey": "licensekey0123456789abcdefghijklstring",
  "seats": 20,
  "softSeats": 0,
  "expires": "2022-09-09T00:00:00.000Z",
  "uuid": "4ceaf808-the-u-u--id4a753fc5a",
  "deleted": false,
  "invalidated": false,
  "features": {
    "FPE": {
      "enabled": true
    },
    "nativeSqlTeradata": {
      "enabled": true
    }
  },
  "handlers": {},
  "hardExpiration": false,
  "renewalToken": null,
  "notice": null,
  "noticeOnExpire": null,
  "classifyUsername": null,
  "classifyToken": null,
  "createdAt": "2021-09-09T13:47:02.473Z",
  "updatedAt": "2021-10-07T17:55:54.806Z",
  "expired": false
}

View License Keys

Method Path Purpose
GET /admin/license Get a list of all license keys.
GET /admin/license/licenseStatus Get the status of a license key's features and seat capacity.

Get a List of License Keys

Endpoint

Method Path
GET /admin/license

Query Parameters

None.

Response Parameters

Attribute Description
ID integer The ID of the license.
UUID string The unique universal identifier.
Features array The features included in the license.
Handlers array The data handlers included in the license.
Expires timestamp The date the license expires.
Seats integer The number of user seats available.
CreatedAt timestamp The date the license key was generated.
Notice string This notice appears on the login page.
NoticeOnExpire string This notice appears on the login page after the license expires.

Request Example

This example request gets the license key for the https://demo.immuta.com instance of Immuta.

curl \
    --request GET \
    --header "Content-Type: application/json" \
    --header "Authorization: Bearer dea464c07bd07300095caa8" \
    https://demo.immuta.com/admin/license

Response Example

[
  {
    "id": 1,
    "uuid": "4cthe808-uniq-uec9-univ-ersal753fcid",
    "features": {
      "FPE": {
        "enabled": true
      },
      "nativeSqlTeradata": {
        "enabled": true
      }
    },
    "handlers": {},
    "expires": "2022-09-09T00:00:00.000Z",
    "seats": 20,
    "createdAt": "2021-09-09T13:47:02.473Z",
    "notice": null,
    "noticeOnExpire": null
  }
]

Get the Status of a License

Endpoint

Method Path Purpose
GET /admin/license/licenseStatus Get the status of a license key's features and seat capacity.

Query Parameters

None.

Response Parameters

Attribute Description
ActiveUserCount integer The number of active users in the Immuta instance.
LicenseSeats integer The total number of seats available in the license.
CanAddUser boolean When true, the administrator can add user accounts to the Immuta instance.
HardSeats integer The number of licensed seats available.

Request Example

This example request gets the number of seats and active users for the license key associated with the https://demo.immuta.com instance of Immuta.

curl \
    --request GET \
    --header "Content-Type: application/json" \
    --header "Authorization: Bearer dea464c07bd07300095caa8" \
    https://demo.immuta.com/admin/license/licenseStatus

Response Example

{
  "activeUserCount": 1,
  "licenseSeats": 20,
  "canAddUser": true,
  "hardSeats": 20
}

Delete a License Key

Endpoint

Method Path Purpose
DELETE /admin/license/{licenseId} Delete the specified license key.

Query Parameters

Attribute Description Required
LicenseID integer The ID of the license key you want to delete. Yes

Response Parameters

Attribute Description
ID integer The licence key ID.
LicenseKey string The license key.
Seats integer The number of seats in the license.
SoftSeats integer The number of users that can be added beyond seats without access being blocked.
Expires timestamp The date the license expires.
UUID string The unique universal identifier.
Deleted boolean If true, the license key has been deleted.
Invalidated boolean
Features array The features included in the license.
Handlers array The data handlers included in the license.
HardExpiration boolean When true, all data access is blocked when the license expires.
Notice string This notice appears on the login page.
NoticeOnExpire string This notice appears on the login page after the license expires.
CreatedAt timestamp The date the license key was generated.
UpdatedAt timestamp The date the license key was deleted.
HardDelete boolean When true, the license key cannot be re-added after it is deleted.
Expired boolean If true, the license has expired.

Request Example

This example request deletes the license key with the ID 1.

curl \
    --request GET \
    --header "Content-Type: application/json" \
    --header "Authorization: Bearer dea464c07bd07300095caa8" \
    https://demo.immuta.com/admin/license/1

Response Example

{
  "id": 1,
  "licenseKey": "<your-license-key>",
  "seats": 20,
  "softSeats": 0,
  "expires": "2022-09-09T00:00:00.000Z",
  "uuid": "4cthe808-uniq-uec9-univ-ersal753fcid",
  "deleted": true,
  "invalidated": false,
  "features": {
    "FPE": {
      "enabled": true
    },
    "nativeSqlTeradata": {
      "enabled": true
    }
  },
  "handlers": {},
  "hardExpiration": false,
  "notice": null,
  "noticeOnExpire": null,
  "createdAt": "2021-09-09T13:47:02.473Z",
  "updatedAt": "2021-09-13T16:53:39.280Z",
  "hardDelete": false,
  "expired": false
}