Federated Search is an addon that enhances your Higher Logic Vanilla (Vanilla) community search by automatically including content from external platforms, such as Skilljar. This broader search provides a real benefit to your users: they get more results, from multiple sources, returned to them in a central location -- but, presented on separate tabs to help keep them distinct.
📝 NOTE: This article describes how to add federated search to your community by enabling and configuring the Skilljar Search Connector.
What is Skilljar?
Skilljar is a cloud-based learning management system (LMS) and customer training platform that enables businesses to deliver training and education to their customers, partners, and employees. Skilljar provides tools and features that help organizations create and manage online courses, track learner progress, and assess the effectiveness of training programs.
Vanilla gives you the ability to connect Vanilla's search to Skilljar to allow users to discover the various courses that you offer right in your Vanilla community.
Getting started
In order to enable federated search between Vanilla and your organization's Skilljar account, you'll need to:
- Create a custom Search Connector in Vanilla.
- Use Skilljar's Published Courses List API endpoint.
- Generate an API Key from the Skilljar Dashboard.
Create a custom Search Connector in Vanilla
- Navigate to Dashboard > Settings > Addons > Federated Search.
- Click Add.
This will launch the setup wizard that will guide you through the process. Follow the steps below to configure your Skilljar connection.
Configure the Skilljar Search Connector
This process will guide you through several screens requiring you to input information.
Basic connector information
On the first screen, provide the following information:
- ID: Choose a Unique ID for your search connector. This will appear in the URL of the search page and in your Vanilla Search Analytics.
- Label: Choose a user-friendly label to identify your Skilljar search results on the Search page (e.g., Academy, Courses, and so on).
- Endpoint: Tell us which API endpoint to use. For Skilljar this will be:
https://api.skilljar.com/v1/domains/
{YourSkilljarDomain
}/published-courses
Click Next to move on to the next screen in your configuration.
API information
Next, you'll provide more specific information about the Skilljar API so that we can properly format our search requests.
- Query: Tell us which API parameter to use to pass search terms to your API. For Skilljar, this is
search
. - Optional Static Parameters: Enter
include_searchable_content=true
- Optional Static Headers: No static headers are needed for Skilljar, so you can leave this field empty.
Authentication
Skilljar's API requires authentication, so you will need to enable Authentication for your custom connector and provide the following information:
- Optional Authentication Headers: Provide your Skilljar API Key in the following format:
{"Authorization": "Basic [YourAPIKey]"}
- Allowed Roles: Tell us which users will be able to search for Skilljar content. Any Roles not selected here will be unable to surface Skilljar content in your community search.
Test
Next, you can test out the API configuration by entering a Test search term. This term will be used to help configure the rest of the connection, so choose a term you know is present in your Skilljar course content. Once entered, click Test Custom API to view the results.
Click Next to move on to the next screen in your configuration.
Results configuration
For this step, you will simply tell us where in the API response we can find the search results by selecting the appropriate parameter from the Results dropdown.
For Skilljar, this will be data.results
Click Next to move on to the next screen in your configuration.
Configuring pagination
Now, we need to specify how to count and paginate search results by selecting the appropriate parameters for each field.
- What kind of pagination does your API use?: Select
Cursor
- Current Page Number: Select
data.count
- Total Results: Select
data.count
- Number of results per page: Enter
100
- Next Page: Select
data.next
- Previous Page: Select
data.previous
Once configured, you should see a properly formatted result count at the bottom of the page, similar to the example below:
Here's what you will see if something is configured incorrectly:
Click Next to move on to the next screen in your configuration.
Mapping search results
You will now need to map the fields provided in the API response to Vanilla Search parameters so that search results can be properly formatted on the Search results page in your community.
- Title: Select
course.title
- URL: Select
course_url
- Highlight/Excerpt: If you'd like to include the course description in the search results, you have two options:
course.short_description
course.long_description_html
You can then preview your search results and validate your field mapping by clicking Next. On this last screen, you can see what the search results will look like on the Search results page once your custom connector is enabled.
Click Save to finalize your configuration.
Enable your Skilljar connector
Once your custom Skilljar connector has been configured, the last step is to enable it.
- On the Dashboard > Settings > Addons > Federated Search page, simply toggle on (it should be blue) your new connector. It is now available for your community members belonging to the Roles you selected earlier.