Portals Best Practices
  • 25 Apr 2024
  • 5 minute read
  • Dark
  • PDF

Portals Best Practices

  • Dark
  • PDF

Article summary

To be successful in the use of Slate Portals, please ensure you have reviewed basic web development or data querying knowledge articles. Familiarity with specific Slate tools and concepts are necessary to build out functional portals.

Getting Started

Determine the type of portal.

  • What is the overall goal of the portal?

  • Who are its users, and what should they be able to accomplish?

  • Determine the functionality.

  • Which Slate users should be allowed to edit the portal?

  • Map out the view.

  • Portals should not be created to replace existing Slate functionality. For example, batch updates can and should be performed by Slate users with the Upload Dataset or Query Batch Management tools, etc.

  • Reader review forms and workflows within the Slate Reader should still be the mechanism through which Slate users provide admission reviews on applications.

Avoid the use of custom SQL

As stated in the Custom SQL Best Practices article, Slate is designed to be used and administered by non-technical users who have no previous experience with Structured Query Language (SQL). In most circumstances, custom SQL is not necessary.

  • When custom SQL is used, it limits the number of resources that will be able to help assist you.

  • Custom SQL is no longer needed for POST methods in portals. Instead, you can use forms to update the data you may need. A future Knowledge Base article is coming out with these steps, but this Community Forum post has outlined an example with the Athletics Portal.

CSS within portal

To effectively use this feature, you must be comfortable with or be willing to learn CSS, in order to maintain CSS rules for portals and be able to update or troubleshoot when necessary!

  • We recommend consulting your web/marketing staff for advice on what styles or rules to implement in an individual portal so that it remains consistent with your institution's visual brand and identity.

  • We recommend that your portals inherit your main Slate branding (by selecting "Default Branding" on the relevant pop-up method) while leveraging custom CSS code for specific items, such as making buttons or tables look a particular way. This allows specific elements or aspects of the portal to be customized at a more granular level, but without writing an entire stylesheet for the portal from scratch.

  • If you need further assistance, we suggest contacting a Preferred Partner to see if they can assist.


Widgets are recommended to improve portal functionality. 

A portal widget is an element that can be added to a portal view to display specified content.

  • Depending on the security type of your portal will determine if you have access to certain widgets or not. For example, an Anonymous security portal will not have access to application widgets.

  • Some widgets include built-in logic, and all widgets can be conditionally shown with filters.

  • Not all widgets are necessary, depending on the portal's function and role in your process.


Using the form widget is recommended if the scope of the form is the same as the scope of the portal (i.e. the security setting that indicates the type of record that will be authenticated by the portal).

Forms can be used instead of the POST method in portals.


When updating data from a pop-up, the pop-up will often include either select lists or input boxes. The user will then select or type in the appropriate value and then save/update/submit.


If you are adding tabs to an existing portal, please note that you'll need to create a new default view with just the tab framework, and then make adjustments to your existing method, as the former default view and method (pre-tabs) will become a view associated with a tab method. For example, moving from a portal without tabs (one view, one method) to a portal with three tabs would result in four views (the tab framework default view and then the three views for the tab content) and four methods (one default and then three with actions for the three tabs).


Ultimately, the speed of loading depends on many factors, including the processing power being used across your system in things like rules, scheduled queries, mailings, etc. 

  • As your database grows in depth and complexity, it is not uncommon for resource-heavy processes that once worked to begin timing out.  This is why all functionality should be built with one clear eye of efficiency and sustainability.  Slate is extremely flexible but any transactional database needs to be nimble as well to complete operations effectively.


Reports can be embedded inside of any portal using the portal editor.

It is recommended that anonymous/guest is not chosen when sensitive data is displayed.

  • Using reports in portals provides independent analysis of specific data.

  • It also provides a wide range of aggregate data regarding their assigned populations, whereas queries show lists of records with details.


To add filter-based search in portals, you must be comfortable with editing HTML, JavaScript, and custom SQL snippets.

  • The parameter type must also match the type of data being passed into the query. For example, if you are selecting an option value of a prompt ID in the portal filter, the parameter will be a unique identifier. If you are passing in a bit prompt (i.e. 1 or 0) or a free text value, the parameter will be a string.

  • To leverage Liquid looping in portals, and thus the table view widget, your query must have an output node.

Preferred Partners and the Community Forum

Technolutions staff will not be able to build custom portals on your behalf and will only be able to provide limited advice in the Community Forums. Someone from the school’s staff will need to take the lead for a portals project. This should be someone who has, or is willing to learn, basic web development skills using HTML and basic knowledge of SQL.

  • Technolutions staff will not be able to assist with writing or providing support for custom SQL solutions. These things should be done by your web development team and maintained by your institution.

  • Feel free to reach out in the Community Forums to see if other institutions are working on similar portals as yours.

  • For customized portal and maintenance, you may need to reach out to a Preferred Partner for further assistance.

  • Please review the Troubleshooting Portals documentation before reaching out to the community for assistance.


Was this article helpful?