Author Archives: John-Francis Caccamo

On APIs, their Practicality and my Intrigue

Hello and thanks for reading my blog! My name is John Caccamo and I am a senior at Oregon State University.

What Is an API & Why Does It Matter for Social Media? | Sprout Social

Today, I wanted to talk about APIs and specifically my internship experience with them. For much of my computer science studies, APIs have been shrouded in mystery and I really knew nothing besides that the acronym stood for application program interface. This past summer at my internship, I was forced to do a deep dive and had to demystify them. Further endeavors this quarter, including taking CS 493: Cloud Application Development and utilizing a BitMEX (crypto currency exchange) API to carry out our capstone project AI/ML BTC bot’s live-trading, have really solidified a strong understanding of APIs. I have made great progress in not only grasping their utility but also utilizing them in project foundation which is really quite remarkable. I would never have guessed that such feats and breakthroughs with APIs would be possible over six months. Working with them has crystalized a notion that maybe I could be an API or cloud-focused engineer as I proceed in my professional career. 

What is an API and How Does It Work?
API flow in a very basic sense

One of my internship duties this past summer was designing a proof-of-concept connection of the company’s internal messaging and alert systems directly with Salesforce, a cloud-based workplace, workflow and client ecosystem liaising software. Naturally, connecting the platforms would occur over APIs. Initially, I was a fish out of water for this task and very intimidated. I threw myself at digesting all the Salesforce and company API documentation I could find.

Postman Public API Network Now the World's Largest Public API Hub |  Business Wire
API integration made possible with this very nifty tool!

Postman would be the crucial tool and building block that would help me visualize my API calls and the necessary structure they would have to take. The calls needed to be constructed in a certain way in order to verify that they were coming from Salesforce for subsequent proceeding within my company’s internal systems. Upon initial receipt and authentication, authorization headers with authentication tokens among others need to be added. Once this initial gatekeeping took place, the call was free to proceed internally. By deconstructing the header components, seeing the required attributes and executing the calls directly with Postman, I was able to envision the code underlying the program that would integrate the APIs.

Taming The Salesforce API Scope
Similar API connection implementation to Salesforce that I helped integrate!

The code effectively wrote itself when I saw the necessary call components at each step of the interchange. I would concatenate the API call body with specific headers depending on which portion of the flow the call was at. I was blown away at the progress that I had made in just 5 weeks. Thankfully, my hard work paid off and I have a return offer to the same team. Yay to further, future API integration!

My API focus this quarter for the AI/ML BTC Trading Bot – our capstone project

Now, I have been revisiting the magical world of API documentation to finally integrate the learned AI/ML BTC bot with live Bitcoin trading. Here’s to the success of this API-specific piece of our project and for many more projects to come.