Home > Integrations > Higher Logic > Establish Higher Logic API Access

 
 

Establish Higher Logic API Access

Overview

In short, get an IAM key and corresponding password from directly from Higher Logic and run a report of which communities FUSE should index. If any of the communities (forums) you wish for FUSE to reach have greater than 500 posts, FUSE must be an administrator (see Why Must FUSE be an Admin? below).

The details here refer to Higher Logic Discussion Posts. There are slight variations for other types of Higher Logic content but the same principles apply.

 

Three Steps

  1. Create a Contact (Higher Logic nomenclature) in your community with administrator rights. Use support [at] fusesearch.com as the email address and FUSE (first name) Search (last name) when establishing the Contact.

    FUSE doesn’t actually need browser access/the password to the account you created here. We’ll only be using the IAM Key + Password combination Higher Logic supplies to you from Step 2 which allows FUSE to reach your communities programmatically.

  2. Your organization must ask its Higher Logic account representative to:

    1. issue an IAM Key (looks something like 01243024-DBAA-4E89-A704-9227859D59A4) that’s based on/associated with the Contact you created in Step 1.

    2. You’ll also be given a password (confusingly, this is different from the password associated with the account in Step 1).

  3. FUSE needs the Community Keys of the forums you’d like for FUSE to reach. These are shown in your browser’s address bar when viewing the forum but a quick way to see them all is to run a report via the Higher Logic administrator panel. See Figure 1 and Figure 2 for guidance.

Figure 1. Open the Higher Logic administration panel and navigate to Community > Reports > Communities Tab (the default - underlined in orange in this image) > View Report.

Figure 1. Open the Higher Logic administration panel and navigate to Community > Reports > Communities Tab (the default - underlined in orange in this image) > View Report.

 
Figure 2.  Notice the column of Community Keys.  Select the Save/Export button near the top of the interface and send this report over to FUSE.  Optionally, cross out or delete communities you wish for FUSE to skip indexing.

Figure 2. Notice the column of Community Keys. Select the Save/Export button near the top of the interface and send this report over to FUSE. Optionally, cross out or delete communities you wish for FUSE to skip indexing.

 

Done! Please pass along the IAM Key + Password from Step 2 and report from Step 3 to FUSE. Read-on only if you’re interested in delving deeper into how this all works.

 

Authentication Background

There’s no need to read further unless there’s an issue or you wish to understand more about the process.

There are three available methods to authenticate to the Higher Logic API. It can get confusing, quickly, when communicating if the three parties ― you, FUSE, and Higher Logic ― are not clear about the method being used.

FUSE uses Method A. We pass the IAM Key and associated password with all the required API endpoint requests.

Method A
Use the IAM Key plus a corresponding password Higher Logic issues to your organization/FUSE. This method‘s password is independent of the password created in Step 1.

Method B
Use the IAM key along with the username and password created in Step 1 above to generate an authentication token. This method’s password is tied to the password in use under Step 1 in contrast to Method A.

Method C
Use the IAM key in conjunction with a browser cookie. This method is designed for making in-browser calls, for example, using JavaScript.

 

Why Must FUSE Be An Admin?

Higher Logic has many API calls that don’t require admin permission. E.g. GetLatestDiscussionPosts and GetDiscussionPosts. These will only return a maximum of 500 items, however. Even though both methods have maxToRetrieve variables, entering any number greater than 500 will still yield only 500 results.

You may be thinking: 500 is all we need!

Once FUSE indexes a source, its content can remain in the FUSE index forever. This means FUSE can use a non-admin method to reach your organization's community initially and, once it grows beyond 500 posts, FUSE will add to the index it already has allowing the index to grow beyond 500 posts without admin permissions.

The problem arises when FUSE must re-index your community. Occasionally you need to remove a post from Higher Logic or you assign taxnonomy to Higher Logic content – these require a re-indexing of all your Higher Logic content which resets the 500 'clock.' Additionally, FUSE does not recommend being the sole copy of your content. FUSE is designed to reach your content where it lives, not be the source itself.

 

OK, I get it. So what does FUSE need?

The GetPagedDiscussionPosts method (see Figure 3) allows FUSE to access all of your Higher Logic posts going as far back as you care for it to. This particular method requires admin rights. From experience, this is the method we recommend you use.

Figure 3. Details of Higher Logics’s GetPagedDiscussionPosts API method. Taken from Higher Logic’s API Documentation at api.connectedcommunity.org/v2.0/Help.

Figure 3. Details of Higher Logics’s GetPagedDiscussionPosts API method. Taken from Higher Logic’s API Documentation at api.connectedcommunity.org/v2.0/Help.