Home‎ > ‎Other Modules‎ > ‎


Purpose: Allows sites to enter the services they provide, when and where they provide those services, and the eligibility criteria for those services. This information is stored in a central location and automatically updates for other sites that subscribe to that information.

When deciding where to refer an applicant or client, the referral process can query the ReferralHub based on data already known about the applicant or client. Potential matching organizations are ranked according to how well the organization's services match the applicant or client's data in order to evaluate which referrals and services may be the best match for a given case.

Status: Beta testing.

Cost: To be determined.

ReferralHub Overview

ReferralHub is a centralized database that stores information about a legal services agency and the services that agency provides. This centralized database exists outside of an agency’s LegalServer instance and is connected to an agency’s LegalServer instance via API, which allows each agency to: 1) Update their own agency's information and have it automatically synch to the ReferralHub database, 2) Optionally create and manage information for Associated Agencies and have that information automatically synch to the ReferralHub database, and 3) View updated information about other agencies and the services that they provide.

Agency information stored on ReferralHub includes:

- Core information about the agency such as the agency’s Name, URL, Type, of Organization, etc. 
- Overall agency eligibility criteria
- Services that are offered by the agency, and any eligibility information required or preferred for those services
- Location Information detailing where and when various services are offered

LegalServer users can search the ReferralHub database for services that match their clients's case, and can include additional criteria such as: "Only search agencies within Washington state," or "Only display referrals that assist veterans who are over 200% of the Federal Poverty Guidelines," etc. The results of the search will include both fully successful service matches (where all search criteria = True), as well as partial search matches where some of the criteria may be true, but more information is needed to determine eligibility. A user can then choose to refer their case directly to any of agencies returned by that search. 

Although ReferralHub is “centralized” in that it stores data in a single location, each agency updates and maintains their agency's information via the ReferralHub module on their own LegalServer site.

Finding Services in a Case

Users can search for eligible services for their client using either a dedicated ReferralHub auxiliary process within a case, or the available Services Browser (in beta testing).

ReferralHub Auxiliary Process

From the actions menu on a case, users will select the auxiliary process named something like, "ReferralHub Services," or "Search ReferralHub." From this link, ReferralHub uses a Service Evaluation tool that compares all of the case data to any published services in the ReferralHub database in order to determine which services may be a match for that case. These matches can be "Full Matches" where call case data is an exact match for a given service, or matches returned can be partial matches where the available case data matches the given criteria, but more information is needed before an 'exact' match can be determined. 

For example, if a user is searching for an appropriate bankruptcy referral for a client who is a veteran, if there is a service where "Legal Problem Code" must = Bankruptcy, and "Veteran" must = True, that will show up as a full match. If there are additional services that also require that the applicant also be homeless, but the case does not have any information for "Current Living Situation," those results will display as partial matches, and explain what additional information is needed.

Services Browser

The Service Browser (/referral_hub/service_browser), allows a LegalServer user to view services offered for their client based on criteria such as Legal Problem Code and Client County, without using the above in-case referral auxiliary processes. This functionality is currently being refined, and will be updated post beta testing. 

Automated Referral Tool (ART) 

Agencies with LegalServer Online Intake will be able to use the Automated Referral Tool (ART) at the end of on online application to route an applicant to an available service in the ReferralHub database. The ART will query services available in the ReferralHub database and display those at the end of an online intake.  On a site that has the referral hub module enabled, admins can enable the  "use referral hub" checkbox in the Online Intake Referral Organization List block. The block will then use ReferralHub to search for both full and partial matches for that application, or will indicate where there are no available matches. This feature is currently in beta testing. 

Organization Records on ReferralHub

Basic Information

Each Legal Aid Agency is an Organization record within the central ReferralHub database. Each Organization record consists of:

A Unique Organization ID (UUID)
Each Organization is assigned its own unique ID, which is stored in the central ReferralHub database in order to ensure that data is stored and displayed consistently for any agency using ReferralHub.

Core Information
An Organization’s record contains basic information like that agency’s name, site abbreviation, description, web address and contact information.

Each Organization record contains information about the services that agency provides as well as any eligibility criteria associated with a given service.

Location Information (Offices)
An Organization's service locations describes where and how each service is offered, using the “offices” list on an agency’s LegalServer site.

Organization Logo
An agency can store a logo which will display both on their Organization record in ReferralHub, as well as in various listviews displayed referral matches in the database.

Standardized Data Output (HSDS)
The data stored on the Organization record is in Human Services Data Specification (HSDS) format, aka, the Open Referral format.


Within each Organization record in ReferralHub, site administrators can create and manage a list of Locations that describing how and where a given service may be offered. Locations may have overall access methods, such as allowing walk-ins from 9-5 on Mondays, Wednesdays, and Thursdays, as well as more granular service-related access methods where certain services may only be offered at given times or through specified methods--for example where a housing attorney is only available to assist walk-ins at that location on Thursdays. 

Site admins create Locations using the Quick Add button on the Locations listview in order to explain where, when, or how a given service is provided. Some examples of locations in ReferralHub may include:

Physical Office Locations
If services are offered at a physical location such as a branch office, satellite office, or temporary location (church basement, community center, etc.). site admins would create a Location within ReferralHub, and indicate the overall access methods for that location (see below). 

Admins may also want to create a Location for an overall service provision method such as a Legal Hotline in order to describe the services provided via that hotline such as providing Brief Advice for Housing matters, but only providing outside referrals for criminal matters. 

Online Intake (or other online resources)
For agencies who want to publish their online intake site as a referral resource through ReferralHub, site admins would create a Location for that online intake site, or other online resources they wish to make available on ReferralHub. Potential applicants can then view the services provided, as well as any restrictions on the access methods for those services. 


"Services" describe the various forms of legal assistance that an agency offers. In ReferralHub, each service should have: 1) A description explaining what that service is, 2) A list of any eligibility criteria that must be met in order to access that resource, and 3) How and when an applicant can access a given service.

Creating a Service

Each service should have a description explaining  core information about the service provided. A service description should include information about the specific legal issues and/or problem codes the service addresses, such as "uncontested divorces," "asylum," etc. as well as any eligibility criteria an applicant needs to meet in order to be eligible for that service, such as residence in a given county, financial eligibility, or other criteria. 

In addition, each service should describe the access methods defining how a user can access a given resource, such as via telephone, walk-in, appointment, etc., as well as the times in which a given service is available for each method. 

If all services are available for a given location via the default access methods for that location, users can set that default for that service. Here, the "Suffolk County Jail Clinic" would always be available during the default times set for that location:

But if that clinic is only available at the Suffolk County Jail during certain times, admins can further define the access method for that given service:

The full service profile for the "Job Training Services" offered by the Re-Entry Navigation Project would display as below. Users can see a description of the services provided, the locations at which this service is provided, the eligibility criteria for that service, as well has how and when an applicant can access that service.

Defining Eligibility: Conditional Logic Expressions & The Service Expression Library

Services are typically limited based on specific Eligibility Criteria. When Adding a Service, site admins can create Conditional Logic Expressions using operators such as "and," "or," and "not" to set the eligibility criteria for a given service. ReferralHub uses these Conditional Logic expressions to determine which Services (if any) are available for a specific client based on aspects of that client or their case, so it is necessary to define which conditions must be met for a client to be eligible for a given Service.

Site admins can create a Service Expression Library listing all of the Conditional Logic Expressions of common eligibility criteria. The library stores commonly-used expressions so admins do not have to re-enter each conditional logic statement for a given service; admins  can simply select the saved Expression from the Library and apply it to a given service. Admins can also create custom expressions on a service-by-service basis, as described below. 

For example, you might have a service where you can help someone so long as they are either a US Veteran AND this is not an emergency filing, OR if they are Disabled. In this expression, the system is evaluating a few items to see if someone qualifies for a Service -- the person can either be (a) a US veteran without an emergency case; OR (b) they can be disabled. If either “condition” is met, a person will qualify for this service. You'd set up the expression as follows: 

Note the importance of how the operators  join the values within this expression: the client is eligible IF they are {a veteran AND this is not an emergency} OR if they are {disabled}. The “AND” + “OR” Operators are really important; if we change the OR to an AND, it changes the meaning of the expression, meaning you would now have to be (a) veteran and (b) not have an emergency case and (c) be disabled to receive this service.

Grouping by Operator
Another thing to note is the difference between "Add Rule" and "Add Group." By default, the "Add Rule" option will connect all fields using the same operator. So to create an expression where an applicant is eligible if they are Over 18 OR Domestic Violence is Present OR they are Active Military, you would just use the "Add Rule" option to connect all of these fields using that single OR operator:

If what you wanted instead is to create a logical expression grouping multiple fields together using more than operator, you would use the "Add Group" option. So in the following example, an applicant is eligible for a service if they are either: 1) Over 18 and DV is Present; OR 2) if they are active military. To create this expression,  you would first select "Add Group," which creates a slightly-indented and shaded grouping box within the expression where you can add "Age is Equal to or Greater than 18" and then within that grouping, you would use "Add Rule" to link "DV Present = Yes" using the AND operator:

And finally, to show that this service is also available for active military regardless of age or DV presence, you would go back to the highest level Add Rule/Add Group options, and select "Add Rule" to put in the Active Military = Yes Option, connecting it to the above group using the OR operator:

Defining Eligibility: Organization Eligibility Parameters

Using the Organization Eligibility Parameter Tool, Organizations can enter specific criteria in a single location to define who is and is not eligible for a given service. For example, if an agency requires clients to be over 18 years old, they can enter that as a Parameter. The advantage to using parameters (as opposed to using just expressions) is that if parameters change, you only have to make the adjustment in one place to update all services that call that parameter. 

When you enter a Parameter, you indicate the values for a given field that are necessary to be eligible for services. As per the above example, if your organization requires clients to be a certain age, site admins would create a parameter with the acceptable values (e.g., age is equal to or greater than 18). 

The list of parameters can include values such as: Age, Adjusted Percentage of Poverty, Citizenship Status, Immigration Status,  etc. Admins can build out library of Organization Parameters and edit as needed:

Defining Eligibility: Preferences

An agency can also use "Preferences" to determine eligibility for a given service. Preferences are similar to Logical Expressions, but are used where an agency wants to indicate a preference in determining service matches, rather than set an absolute requirement. Thus, if you are defining a Service and you indicate the person must be over 18 years old (required), you might prefer that they are also a veteran. Preferences are useful for routing certain cases where more than one service is available and the client more closely meets the criteria of one service over another (based on the preferences of the Service).

Preferences are entered the same way as Logical Expressions discussed above.

Viewing Referral Hub Data for Your Agency

There are a few ways in which to view ReferralHub Data in LegalServer:

- You can find your organization’s ReferralHub data by going to Admin and searching for ReferralHub (or by adding /referral_hub to your LegalServer URL (e.g., abc.legalserver.org/referralhub)

- You can find other legal aid agency’s ReferralHub data within their organizational profile in LegalServer (assuming it is configured with both the Organizational UUID and the Blocks to Display ReferralHub data.

- Using the ReferralHub Services Browser (the URL is appended to your LegalServer URL as /referral_hub/service_browser) (e.g., abc.legalserver.org/referral_hub/service_browser)

Viewing Referral Hub Data for Other LegalServer Agencies

In order to be able to view another organization’s ReferralHub data, you will need to (1) make sure that organization is appropriately linked to its Organizational UUID and (2) set up the ReferralHub Data Blocks.

ReferralHub Organizational Information Data Block
ReferralHub Organizational Location Listview
ReferralHub Organizational Services Listview
ReferralHub Organizational Services Change Logs

Agencies may also be interested in viewing the cases that you have Electronically Transferred to that organization, as well as the cases that they have Electronically Transferred to you. Those can be viewed using the listiviews for:

Referring History
Referral History

Suggested Section Front Listviews for ReferralHub Agencies:

List of Agencies that have been linked in your system to a UUID
List of Agencies registered in ReferralHub
List of Agencies registered in ReferralHub but not setup in your LegalServer instance
Block to show recent changes in a Service for a given agency
Block to show recent changes in a Service within the state

Viewing Referral Hub Data for Non-LegalServer Agencies

Site admins can also create and manage ReferralHub agencies that are part of their ReferralHub group (which is a regional, and/or issue-based designation set by LegalServer for each agency), and may also create and administer agency data for those agencies that are not on LegalServer. Admins can then set the Overall Eligibility Criteria for these agencies, and also set Locations and Services as they can for their own agency. 

To do so, an admin will navigate to their ReferralHub homepage, such as https://rnp.legalserver.org/referral_hub. At the bottom of the organization profile,  note the  section labeled "Other organization that can be administered". For any records already in the system, this contains links to those organizations' pages, where you can view their details, services and locations, etc. There's also a button "Add new organization to manage".

Note that there are only two required fields: Organization name and also Group Membership. Site admins will only be able to add and manage organizations to groups that they're already a member of.

From the Managed Organization Profile Page, admins can click on the quick-add buttons in the various listviews to add services and locations for these agencies.