Many Infoplus clients have the need to synchronize data from Infoplus to an outside system, such as an EPR, accounting package, or catalog/shopping cart. There are various approaches that can be used to build such an integration, each with their own tradeoffs. The best approach for you depends on your specific needs, such as the timing of the integration, as well as the resources you have available for building it (e.g., developers) and hosting it (e.g., servers).
Polling via the Infoplus API
Your system can periodically (say, once an hour) execute searches against the Infoplus API, for records with a createDate or modifyDate greater-than the last time you performed a sync. Then, any records found would need inserted or updated in the remote system.
- You would need to be sure to fetch all pages of results
- New records in Infoplus initially have a modifyDate equal to their createDate. Then future updates to the record will update modifyDate, leaving createDate the same.
- Data is only updated on the interval at which you’re polling for it (e.g., maybe behind by an hour).
Running a User Report through the Infoplus API
You can set up a User Report in Infoplus, on any table, using whatever Smart Filter you need. You can control the columns in the report and can add custom logic through an Infoplus Script. You can then automate the running of this report by making an API call to Infoplus, wherein you can specify the format for the data that you want (e.g., CSV, XML, JSON, Excel, or PDF).
- There is a limit of 10,000 rows returned in such a report from Infoplus.
- If your remote system has a direct import capability from the files produced here, this can be a simple integration.
- You may find yourself pulling the same data every day, and doing redundant updates using this approach, depending on the smart filter you use.
- A good option when daily or weekly batch imports are the goal.
Real-time webhook calls via Triggers
To build a real-time integration, you can setup a Trigger in Infoplus, to run when a record is inserted or updated. If you have that trigger run a Script in Infoplus, you can make an HTTP request in the script to post the data from Infoplus into your system, where you would process it as needed.
- Allows a real-time integration instead of batch.
- Requires you to have a web server on the remote system, that Infoplus can communicate with.
- See also: Using an Infoplus Script to Create a Webhook