Skip to content

Administration Guide

A walkthrough of setting up a new tenancy end to end: create the tenant, create a client for it, enable notifications, then confirm the API gateway actually works. Each step depends on the one before it.

1. Create the Tenant

Go to the Portal UI and log in with the global administrator account (administrator@templatefirm.com).

  1. Navigate to Admin, Tenants from the sidebar menu.
  2. Click "+" to add a new Tenant.
  3. Fill in the required information and click Save.

Tenant creation form

Tenant creation confirmation

Choosing how the tenant's services are configured

Go to the Vault UI and log in with the Tenant Administrator created above. There are two configuration options for Tenant services:

  1. Tenants can share the same REST services.
  2. Tenants can be assigned their own REST service endpoints for process isolation.

These are controlled by the exateportal environment variable in values.yaml: IS_EXECUTION_CONTEXT_ENABLED. true enables dynamic endpoint configuration; false uses system-configured REST endpoints. If you want dynamic endpoint configuration, follow Create the Zone and Create the Namespace below, otherwise skip them.

Create the Zone

Creates the default zone for the Tenant. Navigate to Zones from the sidebar menu, click "+", fill in the required information, and Save.

Create the Namespace

Creates the namespace and associated endpoints for the Tenant.

  1. Navigate to Namespace from the sidebar menu, click "+", fill in the required information, and Save.
  2. Add a new Discovery endpoint, value set to the tenant's ingress host.
  3. Add a new ETL API endpoint, same ingress host.
  4. Add a new APIgator API endpoint, same ingress host.

All hosts configured above should use HTTPS with a trailing slash, for example https://discovery-api.host.com/.

Create Users

Additional user accounts for the Tenant.

  1. Go to the Portal UI, navigate to Admin, Users.
  2. Click "+", fill in the required information, Save.

There are three user types: Execution (system accounts), Invite (invites a user to the platform, requires SMTP configuration), and Standard (credentials for the new user specified directly).

Create user form

2. Create a Client

  1. Navigate to Admin, Client from the sidebar menu.
  2. Click "+" to add a new Client.
  3. Fill in the required information.
  4. Ensure Client Scope includes DefaultScope and ApiGatorScope (see the Client Details screenshot below).
  5. Ensure Client Role is set to FirmAdmin (recommended, see the Claim Details screenshot below).
  6. Click Save.

Client details

Claim details

3. Enable Notifications

Go to the Vault UI, log in with the Tenant Administrator you want to enable notifications for.

Add the Entitlement System Configuration

  1. Navigate to System Config, click "+".
  2. Choose Key EntitlementTenancy, Submit.
  3. Click "+" again, choose Key EntitlementNotification, Submit.

System configuration list

Then edit the EntitlementNotification record (pencil icon), click "+" to add a record, and ensure the toggle for SupportEntitlementNotification is on.

Edit entitlement configuration

Entitlement notification toggle

Add a Solace Endpoint

  1. Navigate to Data Sources, API Connection, Solace.
  2. Click "+", fill in the Solace instance name and connection details.
  3. Click Test Connection, then Save once successful.

Solace endpoint configuration

Add and edit the Solace System Configuration

  1. Navigate to System Config, click "+", choose Key EntitlementTenancy, Submit.
  2. Edit the record (pencil icon), click "+" to add a record, set the Value to the Solace Endpoint configured above, Submit.

4. Test the API Gateway

With the tenant, client, and notifications all configured, confirm the gateway actually works.

Check endpoint connectivity

Open this URL in a browser, replacing <HOSTNAME> with your instance:

https://<HOSTNAME>/health

A successful connection returns:

Health endpoint response

Get a token

curl --location 'https://<HOSTNAME>/apigator/identity/v1/token' \
--header 'X-Api-Key: <API KEY>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=<CLIENT ID>' \
--data-urlencode 'client_secret=<CLIENT SECRET>' \
--data-urlencode 'grant_type=client_credentials'

Token request

A successful response looks like:

Token response

With a token in hand, the tenancy is fully set up and ready to use, see the API Guide for authenticating and calling the Execution or Management APIs day to day.