Self service
Summarize
Summary of Self service
ServiceNow provides self-service options to enable end users to access and interact with your application’s data model via a user-friendly interface. The primary method for delivering this experience is through theService Portal, which supports Requestor or Self-Service users by offering customized and accessible web experiences.
Show less
Service Portal
To facilitate easy creation of application records, use record producers within the Service Portal. Record producers improve the end-user experience compared to standard forms. Work with your ServiceNow Administrator to ensure proper catalog placement and categorization for accessibility.
Create a dedicated Service Portal for your application if:
- Your application requires distinct branding, navigation, or user experience separate from the organization's existing portal.
- There is no existing Service Portal within the organization.
- Your application demands more advanced functionality, customized user experience, or greater control over branding than default portals and forms provide.
Important: Avoid reusing existing service portal pages directly. Instead, build new pages and reuse components such as widgets and headers to maintain modularity and ease of maintenance.
Widgets
Widgets define the content and functionality within the Service Portal. You can use the base system widgets or develop custom widgets tailored to your business needs.
When creating custom widgets, consider these best practices:
- Start from existing widgets rather than building from scratch to leverage proven functionality.
- Baseline widgets are read-only to prevent accidental changes.
- Use the preview pane for rapid testing of widget behavior.
- Always test widgets on actual portal pages before production deployment.
- Use third-party browser debugging tools like ng-inspector for AngularJS to troubleshoot effectively.
- Prefer
$rootScope.$emit()over$rootScope.$broadcast()for event publishing. - Define widget options via schemas to make widgets easily reusable and configurable.
- For unsupported field types in option schemas, create extension tables for custom widget options.
- Leverage Angular Providers to share reusable components and maintain persistent data efficiently, improving portal performance and load times.
Following these guidelines helps ensure a high-performing, maintainable, and user-friendly self-service portal experience.
Your application may need a way for end users to be able to access your data model, so there are self-service options available.
Service Portal
If the application has Requestor or Self-Service users, use Service Portal to provide a friendly web experience.
To give self-service users the ability to easily create application records from the Service Portal, create a record producer. A record producer can provide a better end-user experience than a regular form. Talk to your ServiceNow Administrator about the appropriate catalog and categorization to make the record producer accessible through the Service Portal.
Alternatively, create a Service Portal for your app if the following is true:
The application needs different branding, navigation, or user experience than an organization’s current Service Portal.
OR
The organization does not have an existing Service Portal.
AND
The application needs more functionality than the default portals provide.
AND
The application requires a more customized user experience than the default forms and lists can provide.
OR
Widgets
Widgets are what define the portal content. The base system widgets provided with Service Portal can be used, or developers can build custom widgets to fit business needs.
Considerations for creating custom Service Portal widgets for an application:
- Start from an existing widget instead of creating a widget from scratch. To protect existing widgets from accidental modifications, all baseline widgets are read-only.
- When developing a widget, use the preview pane to quickly test the widget's behavior. Always test the widget on a portal page before releasing a widget to production.
- Use third-party debugging tools when debugging browser-based applications. For example, the ng-inspector Chrome extension for Angular JS.
- Avoid the use of $rootScope.$broadcast(). Instead, use $rootScope.$emit() to publish an event to the rootscope.
- Use widget options to make widgets more easily reusable. The widget option schema defines the user-configurable fields.
- For field types not supported in the option schema, create an extension table to store a custom widget option schema.
- Make use of Angular Providers, which are reusable components that can be injected into multiple widgets. To ensure quick loading widgets and a high performing portal, create Angular Providers instead of overloading your client controllers with persistent data and additional logic. With Angular Providers, you can maintain data for the lifetime of your Service Portal and reuse components and data objects across multiple widgets.
For more information, see Service Portal training.