Template Macros
4. Template Macros
Template pages can be customized. The customization depends on the dynamic data (macros).
Three main sources of dynamic data:
- Client metadata. For example, client_uri, tos_uri, logo_uri
- User information. For example, given name, name, nickname, email
- Incoming request. For example, response_type, state, authorization_details, claims
For static clients, the following metadata can be configured:
companyNamecompanyUrlemailphonecontactPersoncontactTypeotherInfo
For dynamic clients, the following metadata are defined by specification with similar purpose:
contactslogo_uriclient_uripolicy_uritos_uri
The client metadata in the previous example, are available by default as a macro: @CLIENTEXT_{toUpper(name)}@.
For example, logo_uri is available as the macro @CLIENTEXT_LOGO_URI@.
Note: If such metadata does not exist, the string is empty.
For user and request information the following configuration allows you to specify the user and request macros that must be made available.
| Name | Description | Example |
|---|---|---|
| user_macros | List of authenticated user claims to be made available. | display_name, given_name, family_name, name, email, age |
| request_macros | List of request parameters to be made available. | response_type, state, authentication_details, claims, scope |
The user macros are available as macro @USER_{toUpper(name)}@, while the request macros @RQST_{toUpper(name)}@.
For example, if you choose to display an authenticated user's age, it is available as @USER_AGE@.
Request parameters claims and authorization_details are available as macro @RQST_CLAIMS@ and @RQST_AUTHORIZATION_DETAILS@.
Note: For claims and authorization_details macros, if they don't exist, the default is {} and [].
Updated about 3 years ago
