Synchronous integration
Data integrations can be synchronous or asynchronous.
Synchronous integration patterns use the Open Data Protocol (OData) with a continuous flow of data. They follow a blocking request and response pattern, meaning that the caller is blocked until the request is complete and the system returns a response. In the case of custom services and synchronous integration patterns, the system runs the business logic immediately when the APIs are called.
For example, when you use a custom service to look up on-hand inventory, the business logic runs immediately, and the system returns the inventory sum number. Similarly, when you use OData to insert records, the system immediately inserts the data as part of the OData call. You can synchronously invoke REST and SOAP integration APIs in finance and operations apps.
Pattern | Synchronous programming paradigm |
---|---|
OData | DbResourceContextSaveChanges |
Custom service | httpRequestGetResponse |
SOAP | UserSessionServiceGetUserSessionInfo |
Batch data API | ImportFromPackage |
OData integration scenario
In this scenario, a retailer uses finance and operations apps along with an external application to manage their product catalog, which is hosted on-premises. The requirement is to observe real-time updates in finance and operations apps whenever someone creates or modifies a product in the external application. Because real-time data is required, the retailer should use OData service endpoints for this integration. The steps to complete this scenario include:
- Determine which entities are required for integration.
- Ensure that the OData service endpoints are available for the required entities.
- Configure the external application to make an OData call to finance and operations apps whenever someone creates or modifies a product.