PowerShell Universal
DownloadsIssuesDiscordForums
v5
v5
  • ❓About
  • 🆕What's New in v5?
  • ⏯️Get Started
  • 📺Video Library
  • 📚Additional Resources
  • ⬇️Installation
    • Docker
    • Upgrade
    • Uninstall
    • Downgrade
    • Migrate and Restore
  • 🔑Licensing
  • 📊System Requirements
  • 🌐Supported Browsers
  • Release Support Policy
  • Cmdlet Help
  • 🔌API
    • About
    • Endpoints
    • OpenAPI
    • Event Hubs
    • Security
    • Error Handling
    • Rate Limiting
  • 🤖Automation
    • About Automation
    • Scripts
      • Parameters
    • Jobs
    • Schedules
    • Terminals
    • Tests
    • Triggers
  • 📊Apps
    • About
    • Apps
    • Components
      • Pages
      • Data Display
        • Alert
        • Badge
        • Chip
        • Data Grid
        • Date and Time
        • Icon
        • List
        • Markdown
        • Table
        • Timeline
        • Tooltip
        • Tree View
        • Typography
      • Data Visualization
        • Charts
        • Image
        • Map
      • Feedback
        • Backdrop
        • Modal
        • Progress
        • Skeleton
      • Inputs
        • Autocomplete
        • Button
        • Checkbox
        • Code Editor
        • Date Picker
        • Editor
        • Floating Action Button
        • Form
        • Radio
        • Rating
        • Select
        • Slider
        • Switch
        • Textbox
        • Time Picker
        • Transfer List
        • Upload
      • Navigation
        • Drawer
        • Link
        • Menu
        • Stepper
        • Tabs
      • Layout
        • Grid Layout
        • Grid
        • Hidden
        • Stack
      • Utilities
        • Dynamic Regions
        • Element
        • Error Boundary
        • Protect Section
        • Transitions
        • HTML
      • Surfaces
        • AppBar
        • Card
        • Paper
        • Expansion Panel
      • Custom Components
        • Building Custom JavaScript Components
    • Custom Variable Scopes
    • Interaction
    • Role Based Access
    • Scheduled Endpoints
    • Sessions
    • Static Apps
    • Themes
      • Colors
      • Cascading Style Sheets
      • Styles
  • 🌐Portal
    • About the Universal Portal
    • Portal Pages
    • Portal Widgets
      • Syntax
      • Conditions
      • Dynamic
      • Forms
      • Properties
      • Services
      • Tables
  • 🏗️Platform
    • Cache
    • Computers
    • Health Checks
    • Gallery
    • Middleware
    • Modules
    • Monitoring
    • Notifications
    • Plugins
    • Published Folders
    • Tags
    • Telemetry
    • Translations
    • User Sessions
    • Variables
  • 🔒Security
    • About
    • Local Accounts
    • Forms Authentication
    • Authorization
    • App Tokens
    • Enterprise Security
      • Client Certificate
      • OpenID Connect
      • SAML2
      • WS-Federation
      • Windows SSO
      • Permissions
  • ⚙️Configuration
    • Agent
    • App Settings
    • Best Practices
    • Branding
    • Command Line Options
    • Deployments
    • Environments
    • Feature Flags
    • Git
    • Hosting
      • Azure
      • High Availability
      • IIS
      • Reverse Proxy
    • Management API
    • Module
    • Persistence
    • psu Command Line Tool
    • Repository
    • Running as a Service Account
  • 👩‍💻Development
    • Debugging Scripts
    • Editor
    • Hangfire
    • Logging
    • Profiling
    • Visual Studio Code Extension
  • Changelogs
    • Changelog
    • Extension Changelog
    • Roadmap
    • CVEs
Powered by GitBook

PowerShell Universal

  • Downloads
  • Pricing
  • Gallery

Community

  • Issues
  • Forums
  • Discord

Support

  • Portal
  • Knowledgebase

Copyright 2025 Ironman Software

On this page
  • Defining Strings
  • Using Strings
  • Selecting a Language
  • Fallback Logic
  • Language Files

Was this helpful?

Edit on GitHub
Export as PDF
  1. Platform

Translations

Translate strings between languages.

PreviousTelemetryNextUser Sessions

Last updated 10 months ago

Was this helpful?

Translations require a .

Translation support provides the ability to use a special provider to return strings based on the language of the user accessing the API or dashboard.

Defining Strings

Navigate to Platform \ Translations in the Admin Console to define language strings.

Once you have created the language, you can begin to add strings to it by click Edit. The Key will be used within your scripts and will return the value. The value will change depending on the language.

Using Strings

To use a string, you will take advantage of the new $tl: provider. Using this provider in your scripts will automatically translate the key to the string for the user's language.

For example, you would use the variable like this.

$tl:String1

The returned value, when the user's locale is en, will be USA.

Strings are currently available in APIs and dashboards automatically and in scripts when setting the LanguageID variable.

Note that the $t: provider is also available but due to conflicts with the FileSystem provider and mapped T: drives, we suggest using the $tl: provider instead. The $t: provider will be mapped on machines that do not already have a T: drive mapped.

Selecting a Language

PowerShell Universal selects the user's language by examining the Accept-Language header in the HTTP request when user's visit the dashboard page or make an API call. If you want to set a language when running a script, you will need to set the $LanguageID variable to the language you wish to return.

Fallback Logic

If a language is not defined for the specific language ID (e.g. en-US), then PowerShell Universal will attempt to locate the next best language. For example, this would then look for en.

If no language can be found, then the server-wide fallback language will be used. If this hasn't been defined, en will be used. You can specify this the fallback language in Settings \ General \ Platform.

If no language can be found for the specified key, the key will be returned.

Language Files

Language files are generated in the translations folder within the repository. Each language will have a .ps1 file named after the language ID. New-PSUTranslation is used to define the language and set the strings.

It may be desired to edit language files in this way to accommodate copy and pasting keys between language files.

To define a new language, click Create New Language Translation. The language ID should be the that the browser will present when a user accesses the API or dashboard (e.g. en-US)

🏗️
language ID
license