Overview #
The Admin Settings section in xLytix provides centralized control for configuring platform-level settings, governance policies, integrations, and user-level behaviors. It acts as the backbone for managing how data is structured, accessed, monitored, and consumed across the platform.
This section includes the following key areas:
General
- Manage metadata standards such as Tags, Classifications, and Domains
- Configure system-wide notification settings
System
- Configure email providers for sending notifications
- Define platform-level preferences
- Manage locked objects to prevent accidental modifications
Data Catalogue
- Manage API keys (xPilot API Keys) for secure integrations and external access
External Client
- Configure API Data Services for exposing data externally
- Manage Embedding Services for integrating xLytix outputs into external applications
Superuser Only
- Manage license and subscription details
- Configure Single Sign-On (SSO) for secure authentication
Navigation to Admin Settings
- Login to xLytix
- Navigate to Settings from the left panel
- Click on Admin Settings
General Section #
The General section allows administrators to define metadata structures and configure notification mechanisms.
It includes:
- Data Categories
- Notifications
1. Data Categories
The Data Categories feature enables administrators to define standardized metadata used across datasets and pipelines. It includes:
- Tags → Used to label datasets based on processing stage or purpose
- Classifications → Used to define sensitivity or type of data
- Domains → Used to group data based on business functions
These help in improving:
- Data governance
- Data discovery
- Role-based access & masking (e.g., PII handling)
2.Notifications
The Notifications section allows administrators to configure alerting mechanisms for pipeline execution and data quality monitoring.
It helps teams:
- Monitor pipeline health
- Respond quickly to failures
- Track SLA breaches
Steps to Configure Notifications
- Go to Settings → Admin Settings → Notifications
Pipeline Notifications
Available Options:
- On Success → Notify when pipeline completes successfully
- On Failure → Notify when pipeline fails
- On Retry → Notify when pipeline retries execution
- On SLA Miss → Notify when SLA is breached
Configuration Steps
- Enable required notification checkboxes
- Enter email IDs in the input field
- Press Enter after each email
- Click Save Pipeline Settings
System Section #
The System section in Admin Settings allows administrators to configure platform-level operational settings such as email communication, account preferences, and governance controls.
It includes:
- Email Provider
- Preferences
- Locked Objects
This ensures:
- Reliable notification delivery
- Customization of account behavior
- Visibility and control over locked assets
1. Email Provider
The Email Provider configuration enables xLytix to send notifications such as:
- Pipeline alerts
- Data quality alerts
- SLA notifications
Supported providers:
- SMTP
- API-based: SendGrid, Mailgun, Mailchimp
Steps to Configure Email Provider
- Go to Settings → Admin Settings → Email Provider
Option 1: SMTP
- Select Email Provider Type = SMTP
- Enter:
- SMTP Host
- Port
- Username
- Password
- Sender Email
- Enable TLS/SSL if required
- (Optional) Test configuration
- Click Save
Option 2: SendGrid (API)
- Select SendGrid (API)
- Enter:
- API Key
- Sender Email
- Ensure sender identity is verified
- Click Save
Option 3: Mailgun (API)
- Select Mailgun (API)
- Enter:
- API Key
- Domain
- Sender Email
- Ensure domain verification
- Click Save
Option 4: Mailchimp (API)
- Select Mailchimp (API)
- Enter:
- API Key
- Server Prefix (e.g., us1)
- Sender Email
- Validate configuration
- Click Save
2. Preferences
The Preferences section allows administrators to customize account-level settings such as branding and session behaviour.
Steps to Configure Preferences
- Go to Settings → Admin Settings → Preferences
A. Upload Company Logo
Steps:
- Click Choose File
- Select logo file from your system
- Click Upload
B. Configure Session Timeout
Steps:
- Enter value in Session Timeout field (in seconds)
- Example: 30
- Click Save
Important Notes
- Lower timeout → more secure
- Higher timeout → better usability
3. Locked Objects
The Locked Objects section provides visibility into objects that are currently locked in the system. These locks are typically applied when an object is being edited or used, preventing concurrent modifications.
Administrators can:
- View locked objects
- Identify who locked them
- Unlock objects if required
Steps to Manage Locked Objects
- Go to Settings → Admin Settings → Locked Objects
2. View Locked Objects
You will see a list with details such as:
- Object Type (e.g., model)
- Object Space
- Object ID
- Object Name
- Description
- Locked By (User Name)
- Locked By Email
3. Unlock an Object
- Locate the object in the list
- Click on the Lock icon (unlock option) on the right side
- The object will be unlocked
4. Refresh List (if needed)
- Click Refresh to reload the latest lock status
Important Notes
- Unlocking an object may result in loss of unsaved changes by the user who locked it
- Use unlock action carefully, especially in production environments
Data Dialogue Section #
The Data Dialogue section in Admin Settings allows administrators to configure and manage xPilot API integration and usage monitoring within xLytix.
It includes:
- xPilot API Keys (Configuration)
- Usage Monitoring
This section helps in:
- Enabling AI-powered features via xPilot
- Managing API connectivity
- Monitoring token consumption and usage trends
1. xPilot API Keys
The xPilot API Keys section is used to configure and manage the API key required for enabling xPilot features across the platform.
It also provides controls for:
- Index management
- Feature-level enablement
- API key validation and replacement
Tabs Available
- Config → API Key setup and index configuration
- Usage → Token consumption and analytics
A. Config Tab
Steps to Configure xPilot API Key
- Go to Settings → Admin Settings → xPilot API Keys
- Ensure Config tab is selected
2. Configure API Key
- Enter or verify the API Key
- Click on:
- Validate → To check if API key is valid
- Replace Key → To update with a new API key
3. Check Connection Status
- Verify status shows Connected
- If not connected:
- Recheck API key
- Validate again
Index Management
Indexing improves performance and relevance of xPilot features by organizing metadata.
4. Select Index Scope
Choose one:
- Subscription → Applies to entire subscription
- Space → Applies to specific workspace
5. Select Components for Indexing
Enable/Disable using toggle options:
- Models
(Business models, joins, semantic layer artifacts)
- Planning (EPM)
(Plans, measures, dimensions, versions)
- Smart Forms (MDI)
(Manual data input templates and fields)
- Source Tables
(Schemas, tables, columns, stats)
6. Run Index Operations
Rebuild Index
- Click Rebuild
- Use when:
- Structural changes are made
- New data/models are added
Purge Index
- Click Purge
- Use when:
- You want to remove all existing indexes
⚠️ Note:
- Purge will delete all indexed data and require rebuilding
B. Usage Tab
The Usage tab provides insights into API usage and token consumption across users and modules.
Steps to View Usage
- Go to Settings → Admin Settings → xPilot API Keys
- Click on Usage tab
2. View Summary Metrics
You can see:
- Total Tokens (e.g., last 30 days)
- Events (total usage events)
- Avg/day (token consumption rate)
3. Analyze Usage Trends
- View Usage over time graph
- Tracks token consumption daily
4. View Usage by Module
- Graph showing distribution across:
- Glossary
- DataDialogue
- MDI
5. View Top Users
- Identify highest token consumers
- Helps in:
- Monitoring usage
- Cost optimization
6. Detailed User-Level Data
- Scroll to Details section
- View:
- User name
- Tokens consumed
7. Refresh Data
- Click Refresh to get latest usage stats
External Client Section #
The External Client section in Admin Settings allows administrators to enable and manage external access to xLytix data and dashboards.
It includes:
- API Data Services
- Embedding Services
This section helps in:
- Exposing data products via APIs
- Allowing external applications to consume xLytix data
- Embedding dashboards into external portals securely
1. API Data Services
API Data Services is a feature that enables secure access to data from individual data models through REST APIs.
Enable API Data Services Access
Before configuring Data Services for a data model, you must register and configure an application to consume the APIs.
Steps to Register an Application
- Navigate to Admin Settings
- Click the Settings icon located on the left-side vertical navigation bar
- Select Admin Settings
- In the left panel, navigate to External Client → API Data Services
- Register a New Application
- Click the Register Application button in the top-right corner
- This allows you to register and manage applications that consume xLytix Data Products
- View Application Details
- After registration, click the Actions (Eye icon) to view application details
- The following information will be available:
- Application Name
- Client ID
- Secret Key
- Allowed Data Products
- Limits Configuration
- Generate Credentials
- Copy the generated Client ID
- Generate a new Secret Key
- Set the desired validity period for the key
- Copy and securely store the Secret Key in a vault or secure location for future use
- Configure Allowed Data Products
- Select the data products (data models) that the application is allowed to access via APIs
- These data models must have Data Services enabled (see next section)
- Set API Limits
Configure API usage limits for the application:
- RPS (Requests Per Second): Maximum number of API requests allowed per second (default: 5)
- Burst Limit: Short-term spike capacity allowing requests beyond RPS for a brief duration (default: 10)
- Daily Limit: Total number of API requests allowed per day (default: 10,000)
Enabling Data Services for a Data Model
To configure and enable Data Services for a specific data model, follow these steps:
- Navigate to the Data Model
Open the data model from which you want to expose data via APIs.
- Access Data Services
On the top-right corner of the screen, click the Data Services icon.
- Configure Identity
In the Identity section:
- Provide a Data Product Name
- Add a Description for the data service
- Select Output Fields
In the Output Fields section:
- Choose the fields that should be exposed in the API response
- Define Filters
In the Filter section:
- Specify Mandatory Filters (required in API calls)
- Optionally define Allowed Filters
- Configure Sorting
In the Sorting section:
- Select fields that can be used to sort the API response
- Set Record Limits
In the Limit section:
- Define the maximum number of records returned per API call to ensure system performance and stability
- Review Contract JSON
- All configurations are reflected in the Contract JSON section
- Review the generated JSON and update configurations if needed
- Validate Configuration
- The Validation section highlights any missing or incorrect configurations
- Resolve all issues before proceeding
- Save Configuration
- Click the Save button in the top-right corner
- This enables Data Services for the selected data model
Notes
- Data Services must be configured individually for each data model you want to expose via REST APIs
- Ensure application-level access (Allowed Data Products) and model-level configuration are both completed
- Store credentials securely and rotate Secret Keys periodically for enhanced security
Consuming Data Securely Using xLytix REST APIs
Once Data Services are enabled and an application is registered, you can securely consume data using xLytix REST APIs.
API Overview
- Base URL:
https://<client-domain>/xapi/clients/v1/data-services
- Authentication (Required for all APIs):
Include the following headers in every request:
X-CLIENT-ID: <YOUR_CLIENT_ID>
X-API-Key: <YOUR_SECRET_KEY>
1. Discovery Endpoints (GET)
1.1 Get Available Data Products
This API returns all data products (data models) enabled for Data Services and accessible to the registered application.
- Endpoint:
GET /_info
Full URL:
https://<client-domain>/xapi/clients/v1/data-services/_info
- Headers:
- X-CLIENT-ID
- X-API-Key
- Request Body:
None
- Sample Response:
[
“xdl-dataproductname_01”,
“xdl-dataproductname_02”
]
Description:
This response lists all data products that the client application is authorized to access.
1.2 Get Data Product Contract
This API provides the contract (schema and rules) for a specific data product.
- Endpoint:
GET /_info/<data_product_name>
Example:
https://<client-domain>/xapi/clients/v1/data-services/_info/xdl-dataproductname_01
- Headers:
- X-CLIENT-ID
- X-API-Key
- Sample Response:
{
“data_product_name”: “xdl-dataproductname_01”,
“data_product_description”: “data product description”,
“contract”: {
“max_limit”: 1000,
“mandatory_filters”: [“Field_11”, “Field_12”],
“allowed_filters”: [“Field_16”, “Field_18”],
“output_fields”: [“Field_01”, “Field_02”, “Field_03”],
“sort_by”: [],
“sort_direction”: “asc”
}
}
Description:
The contract defines:
- Required (mandatory) filters
- Optional (allowed) filters
- Output fields returned in response
- Sorting capabilities
- Maximum records per request
2. Data Retrieval (POST)
This API retrieves actual data from a data product in JSON format.
- Endpoint:
POST /<data_product_name>
Example:
https://<client-domain>/xapi/clients/v1/data-services/xdl-dataproductname_01
- Headers:
- X-CLIENT-ID
- X-API-Key
- Body Type:
Raw JSON
Request Payload Structure
| Parameter | Type | Description |
| results_per_page | Integer | Number of records per page (capped by max_limit) |
| offset | Integer | Pagination offset (starts from 0) |
| filters | Object | Mandatory filtering conditions |
| sort_by | Array | Fields to sort by |
| sort_direction | String | asc (default) or desc |
Filtering Logic (Important)
Filters must use operator-based syntax. Simple key-value pairs are not allowed.
| Operator | Meaning | Example |
| eq / ne | = / ≠ | { “status”: {“eq”: “active”} } |
| gt / gte | > / ≥ | { “price”: {“gt”: 100} } |
| lt / lte | < / ≤ | { “date”: {“lt”: “2026-01-01”} } |
| in | IN | { “region”: {“in”: [“North”, “South”]} } |
Example Request
{
“results_per_page”: 100,
“offset”: 0,
“filters”: {
“Field_01”: {“eq”: “123”},
“Field_02”: {“eq”: “202602123”}
},
“sort_by”: [“Field_01”],
“sort_direction”: “desc”
}
Important Notes
- Mandatory Filters:
Any field listed under mandatory_filters in the contract must be included in the request.
Missing mandatory filters will result in a 400 Bad Request.
- Response:
The API returns data in JSON format based on the defined output fields.
API Rate Limit Policy
To ensure system stability and fair usage, API requests are governed by rate limits.
Key Limits
| Limit Type | Description |
| RPS (Requests Per Second) | Number of requests allowed per second (steady rate) |
| Burst Limit | Number of requests allowed instantly in a short spike |
| Daily Limit | Total requests allowed in a rolling 24-hour window |
How It Works
Burst + RPS (Leaky Bucket Model)
- Burst: Acts like a bucket capacity (e.g., 10 requests instantly)
- RPS: Controls refill speed of the bucket
- If burst capacity is exhausted, requests are throttled to RPS rate
Example:
- Burst = 10, RPS = 5
- You can send 10 requests instantly, then continue at 5 requests/sec
Daily Limit (24-Hour Window)
- Starts when the first API request is made
- Resets exactly 24 hours after that request
- Not tied to midnight or timezone
Configuration (Admin Control)
These limits can be configured in the Rate Limits section:
- RPS: Controls sustained request rate
- Burst: Controls short-term spikes
- Daily Limit: Maximum total requests allowed
Changes take effect immediately without requiring a restart.
Error Handling
| HTTP Code | Error | Cause | Action |
| 429 | Burst limit exceeded | Too many requests in short time | Retry with delay |
| 429 | Daily quota reached | Daily request limit exhausted | Wait for reset |
Summary Flow
- Register application → Get Client ID & Secret Key
- Enable Data Services on data models
- Use _info API → Discover available data products
- Use _info/<data_product> → Understand contract
- Use POST /<data_product> → Fetch data securely
2. Embedding Services
The Embedding Services feature allows external portals to embed xLytix dashboards securely.
It provides:
- Portal registration
- Dashboard-level access control
- Server-side restrictions
- Runtime filters
Steps to Configure Embedding Services
1. Navigate
- Go to Settings → Admin Settings → Embedding Services
2. Register New Portal
- Click Register Portal
- Enter portal details
- Save
👉 A Portal ID / Client ID will be generated
3. View Portal List
- Displays:
- Status (Enabled/Disabled)
- Portal Name
- Portal ID
- Dashboards count
- API Secret status
- Validity
4. Open Portal Configuration
- Click on a portal to configure details
A. Portal Details
- View:
- Portal Name
- Client ID
- Created & Updated timestamps
B. Manage Secret Key
Steps:
- Click Regenerate → to rotate key
- Click Revoke → to disable key
C. Add Allowed Dashboards
Steps:
- Click Add
- Select dashboard (e.g., Sales Summary)
- Dashboard will be added to allowed list
D. Configure Dashboard Settings
Steps:
- Select dashboard
- Enable/Disable using toggle
E. Configure Server Restrictions
Description
Server restrictions enforce fixed filters at server level (cannot be overridden externally)
Steps:
- Click Add Restriction
- Enter:
- Field (e.g., Year)
- Operator (=, IN, etc.)
- Data Type (string, number)
- Value (e.g., 2025)
- Save restriction
F. Configure Client Runtime Filters
Description
Allows dynamic filters from external applications
(If enabled in UI)
G. Enable / Disable Portal
- Toggle portal status:
- Enabled → Embedding allowed
- Disabled → Embedding blocked
5. Save Configuration
- Click Save
Superuser Only Section #
The Superuser Only section in Admin Settings provides advanced administrative controls that are restricted to superusers. These settings are critical for managing platform access, licensing, and authentication mechanisms.
It includes:
- License & Subscriptions
- SSO Configuration
This section ensures:
- Proper license management and usage control
- Secure authentication and user access management
- Enterprise-level governance and compliance
1. License & Subscriptions
The License & Subscriptions section is used to manage the subscription details and licensing information of the xLytix platform.
It typically includes:
- Subscription plan details
- License validity period
- Feature entitlements
- Usage limits (if applicable)
2. SSO Configuration
The SSO (Single Sign-On) Configuration section allows integration of xLytix with external identity providers (IdPs) for centralized authentication.
Supported mechanisms may include:
- SAML (Security Assertion Markup Language)
- OAuth / OpenID Connect (depending on implementation)