Sr. Developer Advocate
Whether you're writing a full-stack application from scratch, using a no-code builder, or anything in between, chances are you're going to need a few APIs to add features or datasources to your app. Want to send a message to Slack? There's an API for that. Or maybe you want to set a value to the user's clipboard, or open a file download prompt? Yup, there's an API for that as well.
An API, or Application Programming Interface, serves as a defined standard that facilitates interaction and data exchange between two or more computer systems. It provides a set of protocols, tools, and definitions that allow different software applications, systems, or platforms to communicate effectively, enabling seamless integration and access to functionalities, data, or services. Here's a brief overview of the different categories of APIs.
|REST, GraphQL, SOAP
|APIs for web-based communication facilitating interaction between applications over the internet.
|SalesForce, GitHub APIs
|SDKs and Libraries
|React SDK, jQuery, Google Maps API
|Operating System APIs
|Interfaces for OS-specific functionalities and resources.
|Windows API, POSIX API
|APIs enabling communication and control of hardware components or IoT devices.
|Arduino API, Raspberry Pi GPIO
|APIs offered by cloud service providers for managing cloud-based resources.
|AWS SDK, Google Cloud API
|Interfaces allowing access and manipulation of data in databases.
|MySQL API, MongoDB API
|Used within organizations/systems for communication between internal services.
|Microservices API, Enterprise APIs
|APIs accessible to external developers for specific functionalities/data.
|Twitter API, OpenWeatherMap API
|Machine Learning APIs
|APIs providing access to machine learning capabilities or pre-trained models.
|TensorFlow API, IBM Watson API
|Facilitate instant data transmission in applications like messaging or live streaming.
|WebSockets, Firebase Realtime Database API
Most low-code platforms have some kind of API connector, usually REST based. A few, like Appsmith, also support GraphQL APIs natively. Together, these API connectors allow you to configure your own connection to virtually any external service by following their docs (Google Maps API, GitHub GraphQL API, etc), and saving your API key or other credentials as a datasource.
System and Platform APIs
With platforms like Appsmith, the System and Platform APIs are mostly built-in so that you don't have to think about them. Appsmith has built-in actions and functions for downloading a file to the user's system, picking a file from their file system, setting a value to the clipboard etc.
Data and Service APIs
And native SaaS (software as a service) and Database integrations in Appsmith take care of the most common APIs for Data and Service APIs, again, allowing you to easily connect to the API without thinking about it.
Machine Learning APIs tend to be part of a data hosting service, like Google Cloud, AWS, Azure, etc, and not tied to a low-code UI builder. Although some platforms lock you in to only using their datasource, Appsmith is datasource agnostic. You bring your own datasource, and Appsmith lets you build the UI on top of it. So any ML would likely be part of your data/hosting service.
APIs come in many forms, and their support varies greatly between low-code platforms. Appsmith's datasource agnostic approach provides a flexible UI builder that can connect to any datasource or API easily.