If all of the data necessary for configuration is available programmatically, you can choose whether or not to display a user interface. However, if some of the information for one or more providers is not available, make sure that you set the SERVICE_UI_ALLOWED or SERVICE_UI_ALWAYS flag. Suppressing a user interface when required configuration data is unavailable results in an unconfigured message service.
For more information about using status objects, see Using the Status Table and Status Objects.