# ui.json Attributes

The `ui.json` file attributes are:

| Attribute                            | Required                    | Description                                                                                                 |
| ------------------------------------ | --------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `pages`                              | No                          | Container attribute only - array of UI pages to be displayed.                                               |
| `pages` → `title`                    | Yes                         | String title to be displayed at the top of the page.                                                        |
| `pages` → `variables`                | Yes                         | Array of variables to display on a page, 1 variable is necessary.                                           |
| `pages` → `variables` → `name`       | Yes                         | Variable name, must match name of variable defined in variables.json.                                       |
| `pages` → `variables` → `visibility` | No                          | Variable visibility (visible, disabled, hidden) defined by conditional.                                     |
| `pages` → `condition`                | No                          | If condition is met, then the page will display; if the condition is not met, the page will not display.    |
| `pages` → `helpUrl`                  | No                          | URL provided by template dev to additional content to help user with creating app.                          |
| `pages` → `vfPage`                   | No                          | Container attribute only: defines the VisualForce Page to customize this page.                              |
| `pages` → `vfPage` → `name`          | Yes                         | The name of VisualForce class to use.                                                                       |
| `pages` → `vfPage` → `namespace`     | Yes, if org uses namespace. | The namespace for the org.                                                                                  |
| `displayMessages`                    | No                          | Container attribute only - array of custom display message, currently only 1 `displayMessage` is supported. |
| `displayMessages` → `text`           | Yes                         | Text to display on the app creation progress landing page (running Astro page).                             |
| `displayMessages` → `location`       | Yes                         | `“AppLandingPage”` is only supported location.                                                              |

**See Also**

- [Edit ui.json](/docs/analytics/bi-dev-guide-wave-templates/guide/bi-templatesdev-edit-ui-json.md)
