Sunday, December 23, 2012

WebMethods SalesForce Adapter

With the upcoming services in the cloud, integration with and in the cloud is a hot topic. One of these cloud services is SalesForce. WebMethods comes out of the box with a solution to connect Integration Server with the SalesForce platform. To do so it makes use of the SalesForce adapter.

Version 7.1.1 of the adapter allows us to connect to SF using the SOAP API version 23. It is not supported to make a connection using another version of the API. This will be possible on the future webMethods 9.0 release using CloudStreams.

The adapter allows us to perform the following operations, using webMethods services:
  • Create
  • Delete
  • Query (only for queries on a single object)
  • Retrieve (only for queries on a single object)
  • Update
  • Upsert
  • Utility: getServerTimestamp, getUserInfo, resetPassword, sendEmail, sendMassEmail, setPassword
It is also possible to retrieve upsert and delete notifications from the adapter.

One of the biggest advantages of the adapter is transparency. You only have to enter the SF endpoint, a username and a password and the adapter will keep track of the login procedure, session management and session renewal. Clustering and connection pooling are possible since the adapter is incorporated in the adapter runtime framework.

Besides the advantages the adapter has some disadvantages. Not every SalesForce operation is supported. Non-supported operations are convertLead, emptyRecycleBin, merge, process, search and undelete.
It’s also not possible to call custom web services on SalesForce using the adapter. To do so you have to make use of the standard web service descriptor functionality. This means you need to connect manually and keep track of your session.
Complex queries are not possible. The adapter allows you to select a single object, and then you select the fields of the object you want to get as output. Selection criteria can be added too (some kind of where clause), but queries over multiple objects or sub queries are not possible.

There is also a version 8.2 of the SF adapter. It requires at least version 8.2 of the Integration Server but addresses some of the 7.1.1 shortcomings:
  • convertLead is now a service in 8.2
  • there is now a custom query service that allows you to type in any SOQL query
  • all the services mentioned in the report can indeed be invoked using regular Web Services descriptors
  • the 8.2 version also has a service that gives you the SF.com token, which can be used with the Web Service
  • descriptors to invoke these services along with custom web services on SF.com

No comments:

Post a Comment