Erstellt von Nikola Milosavljevic, Geändert am Thu, 07 Jul 2022 um 02:41 PM von Nikola Milosavljevic

In this tutorial we will provide an example on how to use our Custom External API integration. Use-cases will wary depending on the API and the API connection type


Step 1. 


Go to the main page and click on "Custom Integrations




Step 2.


Name the integration and put a description (Optional) .


After that, You set the visibility . Set it to your company, or to a specific company under your Main Company


IMPORTANT NOTE: If you want to set it public, contact the support because an developer has to check the integration and approve it. 


After that , set the Integration Type to "External API" 


Next step (Optional) is to set the Integration Picture


Step 3.


When you have added all the information click on "Configure" .


Now, we get to the "Data Type" and "Connection" Configuration. We are skipping Workflow as it is not available for Users.


Step 4. 


Click on "Add Data Type" 


The Data Type is where we specify the API endpoint we want to use for our template. We can add as many Data Types as needed for this integration.


Name the data type for the specific endpoint you are creating at the moment.


In our case we are using Flowlu's API documentation, and the Data Type (Entity) is "Get Accounts" so we will name it "Get Accounts" 



Now we go to the configuration of the Data Type by clicking "Done" and then clicking on the Data type itself.




We have 3 stages of Configuration of the Data Type :






Step 5.

Now we will set up the CONFIG Part of the data type.


Here are all the options


First step is the Request type. Here we will set "GET" as we are trying to get accounts. 


Now we need to add the "Endpoint" For the specific data type. Endpoint is everything after the base URL of the specific request type, in this case we can find it under Flowlu's "CRM" GET --> Account  field, 


Whole URL:  https://{company}.flowlu.com/api/v1/module/crm/account/list


Base URL:  https://{company}.flowlu.com


API Endpoint: /api/v1/module/crm/account/list



We add this endpoint to the API Endpoint Field 




Next is the "Type" which in this case is JSON as we can see from the Documentation 


We set it in SyncSpider to "JSON"




After we set it to JSON, we now have the Direction of where the data goes. In this case we are using Import as we are Importing ( Using this Entity as Source Entity)  Accounts to Syncspider .


Dynamic URL Option

Now we have the Dynamic URL Option



Dynamic URL fields represent fields tagged in the API Endpoint inside curly brackets "{id}". Example "/projects/{id}/customers" . For Users, they will be displayed in the source or destination configuration step, There are two types of dynamic URL fields:


1. Option type fields: will be displayed to users as HTML select box which values will be generated from specific selected Data type.

2.  field type fields: will be displayed to users as an HTML input box, the input value of this field is filled by the user itself. 


In this case we are not using it as our endpoint doesn't have an {id}


Keep parameter as it is? Option


Next option is "Keep parameter as it is?" 


This option is used in case the BASE URL is in the endpoint field. 


Example:  https://{company}.flowlu.com/api/v1/module/crm/relation/list


Get Last Value from Parameter? Option


This option is used if you have a parameter you want to seperate something with.





Throttle Request

API throttling is the process of limiting the number of API requests a user can make in a certain period


In this option you can set how many Throttles SyncSpider limits the requests per minute and per second.


NOTE: In the API there is usually how much is the Throttle Limit. But for this specific usecase there was no Information.


We have configured everything that we need for this specific Entity so we click on "Save & Next" 






Now we move on to the Pagination settings. Here are all the settings that we have in Pagination :


Disable pagination

First we have Disable pagination

  • Used to disable pagination all together.



In this case you will have to define the Page key, for some cases its just "p" or "page"  


IMPORTANT NOTE: Define key for Page (to remove key from request type '-1')


Page Start from

Define start number for page pagination (0 or 1) 


In this case we can find it in Flowlu's API documentation  under the Basic methods field for LIST, As we can see the Default is 1 so we will set it to 1 In Syncspider. 




Limit is the limit for the batch of data that you are sending per page. Usually the key is "limit" so we will set it to limit


IMPORTANT NOTE: Define key for Limit (to remove key from request type '-1')


Limit Batch

Here you will set the actually limit of the Data that you are batching per page, If you don't put a value here the default will be set to 25 in Syncspider. In Flowlu documentation we can see that the default is 50 and the maximum is 100, we will set 50 for this usecase.


 There are some other options but these are the basic options for the user. 


Now we click on "Save & Next" and we move to Schema.




Schema is the part where you modify and add the fields that you will use for your External API Integration.



Here are the options : 

Content - Here is where you input your code (in this case JSON )

Root Schema Node - the action you are doing 

Add Field - Add and configure a field of your choosing


For Root Schema node, we will be using "response.items" as we are trying to get all information from the "response" and Items has all the information that we need


For the Json code that we will be adding , it is everything from "{" to the "}" , so everything under items, as these are the information we are looking in the JSON data.



After you have added all this JSON to the "Content" In Syncspider. Click on  "Generate Schema" 



As you can see now, the JSON code created all the fields that we need from it, now you can modify the fields to your preference.





With this we end our tutorial, if you got any further questions regarding this. Please do contact us.

War dieser Artikel hilfreich?

Das ist großartig!

Vielen Dank für Ihr Feedback

Leider konnten wir nicht helfen

Vielen Dank für Ihr Feedback

Lassen Sie uns wissen, wie wir diesen Artikel verbessern können!

Wählen Sie wenigstens einen der Gründe aus

Feedback gesendet

Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren