A lot of us know that SugarCRM can be integrated with other applications, we hear “Yes this can be done using the API” however for those that are not technical or haven’t heard of an API, we get confused then head to Google to understand what an API is, more often we end up even more confused! I’m hoping this article will help with that understanding.
What is an API & How Do They Work?
API stands for Application Programming Interface. An API is a software ‘middle-man’ that allows two separate software applications to communicate with each other. So in simple terms, an API is the messenger that sends your request to the application that you’re requesting it from and then it delivers the response back to you.
Let me break this down, a common example I’ve seen on the internet is the Waiter scenario:
So you’re in a restaurant, you are the customer at the table viewing the available menu, the Waiter/Waitress is the person who will take you order, and the Chef/Kitchen will fulfil your order. The Waiter/Waitress is the API in this case.
- They come to you to take your order
- They deliver the order to the kitchen
- They then bring you your food
They’ve connected you and the kitchen together without you doing it yourself. See diagram below:
A real example of a Sugar Integration using an API
A common one I see a lot of is integrating an Accounts Package with SugarCRM. Using API’s you can choose how simple or complex you would like this integration to be, here’s a typical scenario - You’re working with an Opportunity in SugarCRM, you also use Sugar to build a Quote. So you’ve sent the quote to the customer and the customer wishes to proceed, now we need to create a Sales Order and send the invoice to the customer.
Without an integration I know that your next step will be to send an email to the Accounts team to ask them to create the Sales Order and send an invoice to your prospect which mirrors the quote. So you have to literally type everything out in an email; Customer Name, Contact Name, Billing Address, Delivery Address, Phone, Order Line Items, Amounts, VAT Rates etc etc.
The Accounts team will then have to open their Accounting Software and type/copy & paste the details you’ve emailed them to create and send an invoice to the customer - this is so time consuming as data is being entered in to a number of system more than once!
Once the invoice has been sent, how do you as a Sales Person know if the invoice has been paid? You have to keep calling the Accounts Department.
You’ve updated your dropdown on the Quote in Sugar to say ‘Closed Won’ at the point of this saving the API’s get to work! Automatically the Account & Contact information is created in your Accounts software, the Sales Orders is then created (again automatically) all within SECONDS!
Furthermore, the API’s can also be used to track payments, so when you’re looking at the Quote in Sugar you can see if the Client has paid all or part of the invoice, therefore you can continue with the next step.
So in Summary…
APIs make it possible for applications to interact with each other. This is especially important for applications because they can be written in different languages, so APIs provide a means for different applications to overcome the “language barrier”.
Also, APIs mean that users of your software don’t need to leave your application to use someone else’s application. For example, by using weather.com’s API, you can have the current weather data for your local area and display it on your website for visitors. That way everyone can see the weather information without having to go to weather.com.
Think of an API as a bridge, packets of information cross the bridge back and forth to the other side… simple ?
Also in case you didn’t know; SugarCRM has unlimited API usage, this means you can request/send data as many times as you like without having a limit, or needing to pay more money!