In this fastest growing era of Cloud Computing Technology, many organizations that have opt for the Cloud Solutions are doing integrations with other Systems by exposing their “business objects” or access other’s business objects in their Systems. This entire activity enables business partners to share their business data between the heterogeneous systems and this will helps in business grow and will then results in increasing the Organizations ROI’s. Integrations give the ability to eliminate manual export/import of Data and also provide real time automated and targeted communication between the business systems. So keeping this agenda in mind, many organizations have developed their API’s for exposing their business objects as their business needs and through the SAAS Technology providers they are giving access to their API’s.
Every API’s/Web service has its own rules, different authentications processes, different environments and unique functionalities depending on the business process of the Organizations. This article comprises a few things to keep in mind while doing investigations on the Integration with different API’s/Web services.:
1. As you begin the process of consuming different API’s or third party systems in Salesforce or in any other technology, one of the first thing that need to be checked that whether it is a REST based or SOAP based API. We need to have a clear understanding on this before doing the connection with the API as it will clear what we have to utilize in making Request - WSDL/XSD or HTTP Services.
2. After the first step you should investigate for the things required to make connections with API like checking for required authentication parameters like Username/Password/Secret Keys/Signatures/Token/SSL Certificates etc. For e.g. Basic HTTP, OAUTH - 1.0/.2.0, Two Step, Digest Auth etc.
3. Sometimes we may also need to spend more time on investigating SDK/library/ WSDL required for connecting with the API.
4. Then to find out the data based on the requirement like which Objects/Methods in the API/Web service are relevant for the API Query i.e. making the API Query/URI/End Point URL as per the requirement and also it may be good idea to do the Query Testing on some freely available API Testing Tools -POSTMAN/Advance REST Client- Web Service Testing Tool. They both are available as Chrome Extension.
5. From a developer perspective it is important to provide sufficient time to Parsing of Request & Response in Program/Code. As it depends on various critical parameters like Data Hierarchy level (sometimes it is in Array Form or Object Form, deep upto 3/n level), No of Columns, Data Transport Format etc. for e.g Data Transport Formats -XML/JSON/CSV. If you can find out a solid parsing library/standard classes based on your data transport format that parses your Request/Response, that's obviously be your good practice. You may get the desired results based on the good parsing practice.
6. Despite being mentioned at the end, it is always good to make sure that you are aware of your API Call Request Limits, as to maintain optimum performance on the API Server, some API balancing “request loads” by limiting the call requests. When the call request exceeds they are reflecting the messages like –“Service Unavailable/Exceeds the limits for Today” etc.