Adding own API to connect? Many developers use the DSYNC platform to connect API's together. One of the easiest ways to connect systems is to set up a new API endpoint onto your DSYNC canvas (create system manually) and configure your system to talk to DSYNC.
The two key methods to check to see if you will be able to sync data to and from DSYNC will be checking the Authentication methods and the filtering methods.
For simple API setup:
- Authentication methods (DSYNC can connect with multiple and generic oAuths)
- Filtering methods so you can set up polling / schedules (CRON) inside DSYNC
To check if you can build a connector into the DSYNC platform you will need to research into the system you are looking to build a connector for. Developer information is generally easy to find by searching for the developer API documentation.
Basic process steps:
- Add a blank system on the DSYNC canvas
- Configure authentication
- Adding API endpoint for each entity - example products, orders
- Configure CRON URL schedule – With no coding you can schedule a cron timer inside DSYNC
- Synchronise data - with any connectors on the platform
- Let DSYNC know if you would like to market your connector
- After you have set up the configuration DSYNC can test your working solution and put it into our Wizard for widespread use.
Systems can be connected via the below authentication methods. Basic, tokens, oAuth 1, oAuth2, and generic oAuth by passing custom headers. DSYNC have built a configurable oAuth method for passing the token in the header. Developers can use the DSYNC generic oAuth connector to pass specific information across in the header.
What can DSYNC use for Authentication when you are building a plugin?
- Basic – Username password or API key
- Token - Tokens are great because they can be passed in the headers to DSYNC.
- OAuth 1 / OAuth 2 – Custom header. DSYNC have developed a generic oAuth to be able to handle the authentication.
Filtering (Cron Job vs Webhooks)
DSYNC can connect systems with both web hooks and cron jobs. For the simple endpoint configuration, the easiest way to set up is via our cron or schedule this will require the connecting API to have filtering methods for date ranges. Developers can set up polling / cron job if the system has anything to do with dates. Key words to search for in API documents are “modified from”, “updated at”, “since” or anything to do with dates.
To check the filtering capabilities, you will need to check with the systems api documentation. Search the API documentation for terms to be able to check dates
- Check the API documentation for the system you would like to connect to DSYNC
- Check the entities you would like to synchronize example ORDERS, CUSTOMERS, PRODUCTS
- Does the system have filtering capabilities? Look for if the platform has filtering capabilities in the API documentation.
- Filtering Products: Search the API documentation for terms to be able to check dates. A good example of good filtering capabilities for products are to search for terms such as “since” Here is an example of a good filter capability: Since - A date/time string in the format YYYY-MM-DD or YYYY-MM-DDTHH-MM-SS. If a date or time is provided, only products updated since the given date or time will be fetched. Default is to fetch all. This is perfect and indicates that the system can be checked for updates. This means that if DSYNC passes a date to the system it can run a cron / poll the system to check for updates and changes. DSYNC can set time schedules and run cron jobs to check if systems have made changes.
- Filtering Orders. Search the API documentation for terms to be able to check dates. A good example of good filtering capabilities is “Retrieve recently changed orders”. Collect all the orders that have been updated since the time value passed into this parameter (UTC). Fetches from beginning of time if not specified. We accept 2 formats, one with precision down to day and one with precision down to seconds. Example: Jan 20th, 2014 is 2014-01-20, Jan 20th, 2014 20:10:20 is 2014-01-20T20:10:20.
Have you seen our DSYNC developer API portal?