Involved in various 3rd Party product integrations from and to SDM in the past, I started to think about a whish list, which would make life easier and cheaper.
Most People are aware that SDM has very strong and rich inbound API's (SOAP & REST based),while it has a lot of weaknesses when it comes to oubound communication capabilities.
So here is my whish list:
- What if SDM would be able to send out HTTP(S) requests based on Transactions( data record changes), natively, without the need of any external tool, supporting SOAP and REST based API's.
- What if these http requests would be configurable and testable through the normal SDM GUI.
- What if the HTTP requests could easily incorporate data from the context object( the record which was changed).
- What if the response of such an HTTP request could be evaluated and a result could be written back into the context object (changed data record) itself.
- What if you would be able to define so called webhooks, which defines the event and trigger conditions for an outbound HTTP communication.
- What if these webhooks could be defined for any factory (object type).
- What if these HTTP requests could be send out
- synchronously, as part of the transaction, so that an error which may occour in the HTTP communication would abort the transaction (Save) and present the user with the error message
- asynchronously, executed after the "Save" in the background, so that the user would not be harmed by any communication error.
- What if failed asynchrounous HTTP requests would be automatically repeated if they have a technical error reason (timeout/connect failure due to network outage or Service unavailability) in the order they were submitted.
- What if you would have a complete history of the HTTP communication, to be able to check and comprehend what is and was going on.
Let me know , if you think these capabilities would be useful/helpful in your integration challenges as well.
And let me know, if you have additional ideas / whishes / comments.