Accurate membership data is critical for any association - after all, your members are the lifeblood of your association, and your data is how you keep your members involved.
Sometimes associations need to share that data with affiliate associations, or perhaps with third-party tools for member engagement.
Novi provides you with the ability to automate the sharing of member data through an "API" or Application Programming Interface.
What is an API?
An API is just a fancy technical term that means just like we have an interface for your members to view their Novi data (the member compass), we also have an interface to allow other computer systems to send and receive your membership data.
Access to this system is fully controlled by you, and only other systems you grant access will be able to use the interface. If an association you wish to share your data with is already powered by Novi, then they will already have the built-in tools for them to be able to configure the use of the API to access your membership data.
If you'd like to share your data with a system besides another association using Novi, then it'd be best to contact our support team to discuss how to best move forward.
It is common for third party developers to build middle layers that allow data exchange from Novi to other tools or systems. Our support team can make recommendations on approach as well as experienced Novi consultants.
What if I don't want to share all of my data?
Don't worry - our API access can be controlled only by people who have admin access to your association. You can also control which customers and even which member & custom fields get shared with the systems that use the API.
We've built in an extremely high level of control to ensure you maintain oversight of your important member data.
How do I get started?
You'll need to set up a security key we call an "API Key" to get started with sharing your membership data (to do this, see the steps in the section below). This key will be unique to each third party you want to share your association's data with. Each key should be treated just as you would a password - after all, this is the key that gives the consumer the security access to read your membership data.
How To Set Up An API Key
1. First, open up the API Keys option under your association settings menu.
2. Now click the Add API Key button in the upper right-hand corner of the screen.
3. You'll now be shown the screen that gives you full control over how this specific security key can be used. Below is a description of each of the different settings you can control from this screen.
Name - This is to help you remember who/what you set up this API key for, we recommend using the name of the association or application you are giving this key to.
API Key - This will be generated by the system after you save and will be the unique key you'll provide to your consumer.
Webhook Endpoint URL(s) - This is the endpoint of the receiving webhook destination. This is not a required field to set up the initial API key, though the third party you're connecting to may want to have data entered here. (Note: If you are setting up a Novi API feed, this webhook URL will automatically be configured)
4. After entering the initial info, you'll want to determine the scope of what you'll share through your API.
Provide access to - By default, event data and full membership data access (meaning access to all records in the system and their information) are checked on.
Follow Company Signup Protection Rules - This setting controls if a person record is created via the API, then subject that person to the Company Signup Protection Rules.
If you'd like to customize which member data is shared, toggle "Limit Member Data" to ON.
Available Group - This setting controls which members your consumer will have access to. Simply set up a Novi group with the conditions & restrictions that you want to apply to this API key, then select that group from the drop-down here.
Note: When it comes to the security group you use to secure your API key, we suggest being very thoughtful about all possible scenarios that you would like for the consumer of your key to access. For example, if you think I only want to send "current members", but also want the consumer organization to know when a member is no longer current - you actually need to include both current and non-current customers in your group. Otherwise, the target would no longer be able to see the member as soon as their status is no longer current. To create a group of ALL records, leave the group condition blank.
Member Fields/Custom Fields - This is a list of all the different member data we can make available via our API. Simply uncheck/check the boxes next to the field names to turn off/on access to that field. You'll notice a few fields are shown but cannot by unchecked - this is because there is a minimum amount of data that is required for the consumer to be able to make sense of a member's information (for example - a member doesn't make much sense without a name!).
5. Once you've configured the API key the way you want, just click Save & Close to add the key to the system. You'll be taken back to the main API Key screen, where you can now view that security key that you'll need to provide to your consumer. You can also click the Edit link to bring back the detail screen and change the fields or available group, if applicable. Of course, if you want to revoke access to your API via this key at any time - simply click the Delete link and anyone using that API key will immediately lose their access.
Note for onboarding clients:
When you share the API key with your affiliate or third-party organization, the feed will not actually sync until your staging site is launched.
The API functionality is one of the more advanced features that Novi provides, but also one of the most powerful for associations that have other affiliated associations or systems to share data with. If you have any questions about what can be done using this functionality, please feel free to contact the Novi team.