Jigx Variables
has a set of variables that can be used in expressions to manipulate data specific to a , for example, determining the logged-in user, or the organization and solution.
The organization variable is used to get information about the actual organization in , such as your organization's id.
Result | Expression |
---|---|
id | =@ctx.organization.id |

This example returns the organization's id . Each organization configured in Organization Settings in and will have a unique id. See the full code sample in GitHub.
The system variable in an expression is used to get information about devices, for example, you can find information about the internet connection of the device, the language preference, the device's timezone and location details. System expressions are configured by =@ctx.system. followed by the specific variable name.
The supported variables for the system variable are:
Variable | Expression | Results |
---|---|---|
appVersion | =@ctx.system.appVersion | This variable returns the current version of the installed app, which is useful for troubleshooting, crash tracing, and debugging issues. E.g. 1.110.7 |
deviceType | =@ctx.system.deviceType | The variable returns the current user's device type, such as tablet or handset. |
geocodes | =@ctx.system.geocodes | |
isOffline | =@ctx.system.isOffline | Boolean |
isOnline | =@ctx.system.isOnline | Boolean |
isPortrait | =@ctx.system.isPortrait | The variable is set with a boolean and is used to configure the behavior of components in either portrait or landscape mode. |
locale | =@ctx.system.locale | |
location Permissions | =@ctx.system.locationPermisions | Status can be:
=@ctx.system.locationPermissions.foreground.status isGranted is determined by the device's location settings for the Jigx app:
|
timezone | =@ctx.system.timezone.offset | Get the information about the device's timezone, it can be: -name: e.g. Europe/Prague -offset: e.g. +200 |
geolocation | Accuracy: =@ctx.system.geolocation.coords.accuracy Altitude: =@ctx.system.geolocation.coords.altitude Altitude Accuracy: =@ctx.system.geolocation.coords.altitudeAccuracy Location - Heading: =@ctx.system.geolocation.coords.heading Location - Latitude: =@ctx.system.geolocation.coords.latitude Location - Longitude: =@ctx.system.geolocation.coords.longitude Location - Speed: =@ctx.system.geolocation.coords.speed Location - Timestamp: =@ctx.system.geolocation.timestamp Location - Entire array (All details): =$string(@ctx.system.geolocation) | |
isLocationSharingEnabled | =@ctx.system.isLocationSharingEnabled | Boolean |
solution | =@ctx.solution.id | XXXXXXXX-XXX-XXXX-XXXX-XXXXXXXXXXXX |
user | =@ctx.user.email or =@ctx.user.id | username@jigx.com or XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX |

With this expression, you can disable the action button to prevent it from being pressed if the device is offline.
See the full code sample in GitHub.
This example uses system.timezone to get the information about the device's timezone, it can be the name of the timezone or the offset. Use it further to convert date/time using Date & Time expressions into the format that you require.
See the full code sample in GitHub.


This example shows how you can use system.geolocation to get the device's location (details).
See the full code sample in GitHub.
Location tracking is a powerful feature in mobile apps that enables various functionalities, such as navigation, personalized recommendations, and location-based notifications. However, using location data requires explicit permission from users to ensure privacy and compliance with platform guidelines.
This example, uses the device's privacy and security settings to display a location or deny access to a location. Change your device's settings for the to see the returned permissions.
The following statuses are returned depending on the device's settings:
- undetermined
- granted
- denied
Evaluating whether or not permission has been granted using isGranted returns a boolean.

Device information is important to identify the types of devices and the app version users are using. This is useful for troubleshooting issues and diagnosing app crashes. The details can be retrieved in multiple ways when using the system variable, such as on the app screen or when connected to dev tools in .

See the example using dynamic data in GitHub.

The user is used to get information about the logged-in user, for example, name, and email.
Result | Expression |
---|---|
Name | =@ctx.user.displayName |
=@ctx.user.email | |
id | =@ctx.user.id |

See the full code sample in GitHub.
The solution variable is used to get information about the specific solution, for example, name, and id. Custom variables can be set in Solution Settings in , and the variable value referenced in the solution expression.
Result | Expression |
---|---|
name | =@ctx.solution.name |
id | =@ctx.solution.id |
variable value | =@ctx.solution.settings.custom.variableName |

This example shows how to get the solution's id and name using the solution variable.
See the full code sample in Github.

