trialInfo
Category: Application Control
Namespace: web.app.trialInfo
Description
Get comprehensive trial and expiration information including trial status, days remaining, expiration date, and whether the trial has expired. This provides all trial-related details in a single call.
Syntax
const trialInfo = await web.app.trialInfo();
Parameters
None
Returns
Promise<Object> - Trial information object:
{
isTrial: boolean,
daysRemaining: number,
expirationDate: string,
trialExpired: boolean
}
Example
Simple example
const info = await web.app.trialInfo();
console.log('Trial Info:', info);
Practical example
const info = await web.app.trialInfo();
if (info.isTrial && info.daysRemaining <= 7) {
alert(`Trial expires in ${info.daysRemaining} days. Please purchase a license.`);
}
Advanced example
async function showTrialBanner() {
const info = await web.app.trialInfo();
const banner = document.getElementById('trial-banner');
if (!info.isTrial) {
banner.style.display = 'none';
return;
}
if (info.trialExpired) {
banner.className = 'banner error';
banner.innerHTML = `
<strong>Trial Expired</strong>
<p>Your trial has ended. Purchase a license to continue using this application.</p>
<button onclick="purchaseLicense()">Buy Now</button>
`;
} else if (info.daysRemaining <= 3) {
banner.className = 'banner warning';
banner.innerHTML = `
<strong>Trial Ending Soon</strong>
<p>Only ${info.daysRemaining} days remaining. Expires on ${info.expirationDate}</p>
<button onclick="purchaseLicense()">Buy Now</button>
`;
} else {
banner.className = 'banner info';
banner.innerHTML = `
<strong>Trial Version</strong>
<p>${info.daysRemaining} days remaining (expires ${info.expirationDate})</p>
`;
}
banner.style.display = 'block';
}
Use Cases
- Display trial expiration warnings
- Show days remaining in UI
- Implement trial expiration logic
- Display purchase prompts
- Track trial usage
- Show trial status banner
- Send expiration notifications
- Restrict features after trial expires
Error Handling
This method does not throw errors. Returns default values for licensed versions.
const info = await web.app.trialInfo();
if (info.trialExpired) {
alert('Trial has expired. Please purchase a license.');
await web.app.close();
}
Performance Tips
- Check at startup and periodically
- Cache result and refresh daily
- Use for trial notifications
- Combine with UI to show status
Related Methods
web.app.licensed()- Check if licensedweb.app.licenseInfo()- Get license detailsweb.app.canRunApplication()- Check if can run
Notes
- Returns trial information for unlicensed versions
- Licensed versions return
isTrial: false - Days remaining counts down to zero
- Expiration date in readable format
- Use to implement trial restrictions
- Check regularly to enforce trial limits