A relay state is basically just a token to select a redirect target after successful authentication (i.e., after the SAML/consume URL is called).
The name of the relay state is arbitrary and can be anything (it should contain only letters, no whitespaces).
If a relay state is not found or none is declared, it uses the default target which is:
So you could set up states like:
localeDE : /app/?locale=de&uiLanguage=de
Now you need to add the state name into the login process. Here it depends where it starts.
If you start off the sign-on URL, you just append it to the URL:
If it is IdP triggered, the IdP configuration needs to have that “RelayState=localeDE” in its consume URL.
See also How to Set language and Locale via URL.
Found an issue in documentation? Write to us.