---
title: "Exact Online and Sync API"
canonical: "https://help.fieldbuddy.com/space/FBDOCS/5146116100/Exact%20Online%20and%20Sync%20API"
format: markdown
---
> Macro (excerpt)
> 
> While doing implementation of FlexConnect, you might experience an failed  Audit Trail for inbound sync for Exact Online
> 
> "This endpoint has mandatory filtering applied. A GET request for this endpoint must have a $filter parameter with one of the following fields in the url: … “  
> 
> 
> ![image](media://e2949b77-6814-430b-bd04-cc13acf26270)
> 
> ##### What is sync API
> 
> Sync API of an set of endpoints of Exact Online, that allows to retrieve all data from certain entities (accounts/contacts/Order and Order Lines)
> 
> Full list can be found in Exact Online Documentation, with filtering for “Sync'
> 
> [https://start.exactonline.nl/docs/HlpRestAPIResources.aspx?SourceAction=10](https://start.exactonline.nl/docs/HlpRestAPIResources.aspx?SourceAction=10)  
> 
> ![image](media://9e20b482-75c3-454b-9107-a979f4487131)
> 
> The key difference between regular and “sync” endpoint is that sync endpoint allows to return all the records that were changed since certain timestamp. Therefore it is very convenient to use it in FlexConnect, since it is also developed to sync data entity to entity, and only apply changes that were done since last sync. 
> 
> > ❌ NOTE: Filtering of data is not supported for sync endpoint
> 
> ##### Why EOL introduced it
> 
> Exact Online experience massive load from all types of API calls. Therefore they have introduced in order to lower load into their alternative endpoints. Exact Online also prevented using regular endpoints without filtering on certain fields. That is inconvenient if you have to sync all data (like all accounts or sales orders)
> 
> ##### What does that mean for my FlexConnect mapping
> 
> With very hight probability, some of the changes might be required to your object mappings for Inbound Sync in order to support the new endpoints. Also latest package has to be installed – 1.17.6 or higher.
> 
> Below are important considerations for using endpoints with Sync API
> 
> 1. There is a new field – called Timestamp on Object Mapping level (it might be necessary to have that added to page layout).
> 2. For Sync API, that would be a field, that will be submitted to Exact Online every time when Inbound Sync is executed (regardless if `Use Last Successful Sync Date` is checked or not)
> 3. <u>**Filtering for Sync API endpoints works only on Salesforce Side and with simple terms. **</u>  
> It means that record will still be fetched but will not be inserted in salesforce  
> Example:  
> `LastName ne null`  
> `AccountCode eq 'abc'`  
> More complex filtering are not supported (with and / or operands or brackets)
> 4. Sync API endpoints might have different set of properties returned. Check table below to see corresponding links for both regular and sync APIs. Therefore it is quite important to do dry-run ater changing and endpoint.
> 5. In order to sync all records for certain mappings – set Timestamp ID to 0
> 
> ##### Affected endpoints
> 
> In the table below are list of the most commonly used endpoint and necessary changes to them. 
> 
> For all the endpoints that are not in table - change should be done in similar way.
> 
> | ** Regular Endpoint**  
> ** with disabled filtering** | **Alternative Sync API ** | **FlexConnect Object Mapping configuration changes** |
> | --- | --- | --- |
> | [/CRM/Accounts](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=CRMAccounts) | [/sync/CRM/Accounts](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncCRMAccounts) | External Object Name:  `Accounts`  
> External Field Name: `ID`  
> Endpoint URI: `sync/CRM/Accounts` |
> | [/CRM/Contacts](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=CRMContacts) | [/sync/CRM/Contacts](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncCRMContacts) | External Object Name:  `Contacts`  
> External Field Name: `ID`  
> Endpoint URI: `sync/CRM/Contacts` |
> | [/CRM/Adresses](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=CRMAddresses) | [/sync/CRM/Addresses](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncCRMAddresses) | External Object Name:  `Addresses`  
> External Field Name: `ID`  
> Endpoint URI: `sync/CRM/Adresses` |
> | [Logistics/Items](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=LogisticsItems) | [/sync/Logistics/Items](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncLogisticsItems) | External Object Name:  `Items`  
> External Field Name: `ID`  
> Endpoint URI: `sync/Logistics/Items` |
> | [/salesorder/SalesOrders](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SalesOrderSalesOrders) | [/sync/SalesOrder/SalesOrderHeaders](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncSalesOrderSalesOrderHeaders) | External Object Name:  `SyncSalesOrderHeaders`  
> External Field Name: `OrderId`  
> Endpoint URI: `/sync/SalesOrder/SalesOrderHeaders` |
> | [/salesorder/SalesOrderLines](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SalesOrderSalesOrderLines) | [/sync/SalesOrder/SalesOrderLines](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncSalesOrderSalesOrderLines) | External Object Name:  `SyncSalesOrderLines`  
> External Field Name: `ID`  
> Endpoint URI: `/sync/SalesOrder/SalesOrderLines` |
> | [/salesinvoice/SalesInvoices](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SalesInvoiceSalesInvoices) | [/sync/SalesInvoice/SalesInvoices](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncSalesInvoiceSalesInvoices) | External Object Name:  `SalesInvoices`  
> External Field Name: `ID`  
> Endpoint URI: `/sync/SalesInvoice/SalesInvoices` |
> | [/salesinvoice/SalesInvoiceLines](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SalesInvoiceSalesInvoiceLines) | [/sync/SalesInvoice/SalesInvoices](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncSalesInvoiceSalesInvoices) | External Object Name:  `SalesInvoiceLines`  
> External Field Name: `ID`  
> Endpoint URI: `/sync/SalesInvoice/SalesInvoices` |
> | [/financialtransaction/TransactionLines](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=FinancialTransactionTransactionLines) | [/sync/Financial/TransactionLines](https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=SyncFinancialTransactionLines) | External Object Name:  `SyncSalesOrderHeaders`  
> External Field Name: `ID`  
> Endpoint URI: `/sync/Financial/TransactionLines` |
> 
> ##### Links
> 
> Helpfull links to read about this in EOL documentation
> 
> - [https://support.exactonline.com/community/s/knowledge-base#All-All-DNO-ReleaseNote-rn-2005-rn-appcenter-syncapis](https://support.exactonline.com/community/s/knowledge-base#All-All-DNO-ReleaseNote-rn-2005-rn-appcenter-syncapis)
> - [https://support.exactonline.com/community/s/knowledge-base#All-All-DNO-Concept-api-apitypesc](https://support.exactonline.com/community/s/knowledge-base#All-All-DNO-Concept-api-apitypesc)