Load Module
Audience:
Low-code EngineersSkill Prerequisites:
Actions,Tokens
Reads the settings of a DNN module on a page into tokens: its title, display options, visibility dates and the roles that have each permission. You choose which values to load by naming a token for each one.
This action is part of the Portal Management add-on, which is installed and licensed separately (feature package PORTAL). If it isn't licensed, the action fails with a not-licensed error.
Typical Use Cases
- Fill a form with a module's current settings, then save changes with Update Module
- Check who can edit a module before changing it
- Check that a module exists on a page before adding or deleting one
Don't use it to
- Read the content of an HTML module. Use Load HTML Module instead.
- Read a page's settings. Use Load Page instead.
Related Actions
| Action Name | Description |
|---|---|
| Update Module | Saves changes to the same settings. |
| Add Module | Adds a new module to a page. |
| Load HTML Module | Reads the content of an HTML module. |
| Export Module Content | Exports a module's content. |
| Load Page | Reads a page's settings. |
| Load Portal | Reads a portal's settings. |
Input Parameter Reference
| Parameter | Description | Supports Tokens | Default | Required |
|---|---|---|---|---|
| Page Identifier | The page that has the module. Pick a page, or use an expression that resolves to a Tab ID, a Tab Path such as //Customers//Acme, or a Tab Name (the first page with that name is used). Leave empty to use the current page. | Yes | Current page | No |
| Module Identifier | The module to load, as a module ID or a module title. A title is matched without regard to case, and the first module on the page with that title is used. Deleted modules are skipped. | Yes | empty string | Yes |
| Store Module Title in | The name of a token to receive the module title. Square brackets are optional. | No | empty string | No |
| Store Display Container in | The name of a token to receive the module's DNN Display Title option, as true or false. | No | empty string | No |
| Store Enable Print in | The name of a token to receive the print option, as true or false. | No | empty string | No |
| Store Enable RSS in | The name of a token to receive the syndication (RSS) option, as true or false. | No | empty string | No |
| Store Start Date in | The name of a token to receive the start date. | No | empty string | No |
| Store End Date in | The name of a token to receive the end date. | No | empty string | No |
| Permissions | Rows of Permission Key and Store in Token. The key is a module permission key or name, for example VIEW or EDIT. The token receives the IDs of the roles that are granted that permission, separated by commas. Square brackets in the token name are optional. | No | none | No |
Output Parameters Reference
Each output is written to the token you name in the matching parameter. Leave a parameter empty to skip that value.
| Parameter | Value written |
|---|---|
| Store Module Title in | The module title. |
| Store Display Container in | true or false. |
| Store Enable Print in | true or false. |
| Store Enable RSS in | true or false. |
| Store Start Date in | The start date as a short date in the server's culture, for example 10/1/2026. The time isn't included. Not written if the module has no start date. |
| Store End Date in | The end date, in the same format. Not written if the module has no end date. |
| Permissions | For each row, a comma-separated list of role IDs, for example -1,4. -1 is All Users and -3 is Unauthenticated Users. It's an empty string if no role has that permission. |
Considerations
- A missing module isn't an error. If the page or module can't be found, the action does nothing and no tokens are written. Check a loaded token, such as the title, before you rely on the values.
- Missing dates leave tokens unchanged. If the module has no start or end date, that token isn't written, so it keeps any earlier value.
- Only granted role permissions are listed. Denied permissions aren't included. Roles are listed by ID, not by name.
- View permission can come back empty. When a module uses the page's view permissions ("same as page"), it may have no
VIEWentries of its own. Use Load Page to read the page's permissions in that case. - Leaving Page Identifier empty needs a current page. In a scheduled workflow or an API call there's no current page, so the action fails with
Could not get current page. - There's no permission check in the action. Anyone who can run it can read any module's settings and permissions.
Examples
To understand how to use the below examples, please see Running Examples.
1. Load a module's settings into form fields
This action loads the module in [ModuleId] on the page in [PageId] into the ModuleTitle, ShowTitle, StartDate and EndDate fields, and the roles that can edit it into [EditRoles].
{
"Title": "Load Module",
"ActionType": "LoadModule",
"Description": "Load module settings for editing",
"Parameters": {
"PageId": "[PageId]",
"ModuleId": "[ModuleId]",
"Title": "ModuleTitle",
"DisplayContainer": "ShowTitle",
"DateStart": "StartDate",
"DateEnd": "EndDate",
"Permissions": [
{
"name": "EDIT",
"value": "EditRoles"
}
]
}
}
2. Check that a module exists by title
This action looks for a module titled Latest News on the //Home page and stores its title in [FoundTitle]. A later action can use the condition [FoundTitle] == "Latest News" to run only when the module was found.
{
"Title": "Load Module",
"ActionType": "LoadModule",
"Description": "Check for the Latest News module",
"Parameters": {
"PageId": "//Home",
"ModuleId": "Latest News",
"Title": "FoundTitle"
}
}
Revised 09/27/2026