Core Concepts
Superblocks is a programmable IDE for developers to build any internal Application, Workflow, or Scheduled Job at a fraction of the time and cost.
Applications
A Superblocks Application is an internal tool that has a User Interface that end users such as Customer Support, Operations, Sales, or Developers can use to manage a business process. By querying your Integrations (your databases, SaaS Vendor APIs, Internal APIs) and using the Superblocks Drag and Drop interface builder, you can build internal tools, for example:
- SaaS: Customer Trial & Usage tool for the Customer Success team
- Ecommerce: Order Management tool for the Support team
- Fintech: Credit Card Approval tool for the Operations team
- Insurance: Claims Management tool for the Agent team
- DevOps: Deployment Tracking tool for the DevOps team
The Application Frontend and Backend
The Application Frontend
The Frontend consists of UI Components. Each Component has a set of Properties such as data to fill the Components, event triggers for actions or stylings like a background color. Properties can be modified directly or programmatically by using Bindings, which enable you to write JavaScript code. Each UI component is a JavaScript object that can be referenced programmatically. Through simple Drag and Drop of Components and customizable Properties, the UI editor allows you to create even complex UIs in no time.
The Frontend is based on ReactJS. All UI Components in Superblocks are a function of their state. This means if you update the state that a Component uses, the Component will automatically update its UI. For example, if you update the data that a Chart Component uses, the chart will automatically update to reflect the new state.
The Application Backend
The Backend consists of one or more backend APIs that query databases and APIs. A Backend API could be triggered by one UI Component (ex. On a button click) and Components can read data from APIs (ex. To display results of a SQL query in a table).
An API consists of different Steps that are executed one after the other. A Step can be either a JavaScript or Python script to manipulate data, a Database from which data is read or written to, and any GraphQL or REST API internally or externally (ex. Salesforce, Zendesk, Github).
Backend APIs in Superblocks are akin to Server Side APIs. This means that a JavaScript Step executed as part of a Backend API runs “Server side code” on Node.js, which is separated from any JavaScript code in the Frontend.
Workflows
A Workflow is a REST endpoint built in Superblocks. Workflows can be called from other Superblocks Applications, Scheduled Jobs, 3rd party webhooks and your custom application code outside Superblocks. Workflows can even call other Workflows too. Common use-cases for Workflows in Superblocks include:
- Send a slack message to #user-signups channel every time a signup happens in your app, after enriching it with your database and a 3rd party API like Clearbit
- Updating your reporting database every time a user clicks "Checkout" on your website
- Call a webhook to update user data in Segment every time a user changes her personal information
When to use a Workflow instead of an Application API
Whenever an API is called from more than one place in an Application or across multiple Applications, a Backend API should be converted into a Workflow in Superblocks. The Workflow can then be generally called by any number of Superblocks Applications inside Superblocks or outside Superblocks from your code or 3rd party webhooks.
Scheduled Jobs
Scheduled Jobs are CRON jobs built in Superblocks. Scheduled Jobs are very useful to automate recurring tasks. Define the Steps to be performed and set the jobs schedule to every minute, hour, day, week or month. Common use-cases for Scheduled Jobs in Superblocks include:
- Email a product usage report from your production Database enriched with Salesforce data every weekday at 9:00 AM
- Load refund data from a Google Sheet, calculate metrics in JavaScript and send out a message to the #refunds channel in Slack daily at 6:00 PM
- Synchronize your sales data by loading orders from different databases, standardizing currencies and date formats with Python and storing the result in Snowflake every minute
Integrations
Through Integrations Superblocks can be connected to any type of Database and API. Once set up, Integrations can be used in Backend APIs of Applications, Workflows and Scheduled Jobs.
Database Integrations
Database Integrations allow you to integrate any type of Database into Superblocks. Commonly used pre-built Database Integrations in Superblocks include MySQL, PostgreSQL, DynamoDB, MongoDB, and more.
API Integrations
API Integrations allow you to integrate any kind of 3rd party software in your Backend APIs, Workflows, and Scheduled Jobs. Pre-built API Integrations in Superblocks include Slack, Salesforce, Snowflake, and Zendesk.
Authenticated APIs are supported through the pre-built REST API Integration that automatically authenticates an endpoint when it is called and manages the fetching and caching of tokens. Supported authentication methods include OAuth 2.0, Firebase and HTTP Basic Authentication.
Connect Superblocks to any internal or external API
Generic REST API and GraphQL Integrations allow you to add any third party tool with an API to the growing list of pre-built integrations in Superblocks.
Integration Configuration
Configurations let you set up an Integration to have different connection settings and credentials for different Profiles. For example, set your REST API's base URL to https://staging.acme.com/api/v2 for Development and Staging, while using https://acme.com/api/v2 for Production.
The configuration used by your Integration will change based on the Profile used when executing APIs, or when running Workflows and Scheduled Jobs.
Superblocks Environment | Integration Profile used |
---|---|
Edit | Staging Profile |
Preview | Staging Profile |
Deploy | Production Profile |
Leverage AI tools
Use the OpenAI integration to generate text or code based on a text prompt you provide it. Provide AI capabilities to end-users or leverage it within APIs to enrich your Superblocks APIs. Some examples include flagging fraudulent activities based on customer transaction history, suggesting potential fixes to customer issue tickets for support reps, or generating product descriptions for e-commerce products based on a text prompt.