How to create a real-time notification system with Baserow webhooks

Banner image for blog post on How to create a notification system using Baserow webhooks

Baserow is a platform that lets you organize information in a way that works for you.

There are many ways you can use Baserow for your workflow. Imagine you need to manage a project, track inventory, or organize customer information. Baserow’s database features allow you to create a central hub for this kind of data, making it easy to store, organize, and access it.

  • Streamline projects: Manage tasks, deadlines, and team communication all in one place.
  • Track information: Keep customer details, inventory records, or any other data organized and accessible.
  • Boost collaboration: Share your databases with colleagues for real-time teamwork.

In this tutorial, we’ll create a real-time notification system using Baserow webhooks. Webhooks allow us to automate workflows by sending real-time data to another app when certain events occur.

Here’s why this is useful: Let’s say you have an automated process that needs to notify you about a completed task or an error. This workflow will send those updates from Baserow directly.

Prerequisites

Before we start, ensure you have the following:

  • A Baserow account
  • A table in Baserow with some sample data
  • An account on a webhook integration platform like Zapier or Make

Step 1: Set up your Baserow database

Let’s get started with setting up our Baserow database! If you’re new to Baserow, head over to baserow.io and sign up for an account.

  1. Create a new database: Once you’re logged in, create a new database. This will be where we organize our information.
  2. Name your database: Now, it’s time to give our database a clear and descriptive name. For example, if we’re using it to manage tasks, we could call it “Project Management”. This will help us easily identify the information stored within.
  3. Build your tables: Databases are organized using tables and fields. Create a new table relevant to your needs. For instance, if we’re managing tasks in a project management database, we might create a table called “Tasks”.
  4. Organize your data: Within this table, we can then define the specific fields we want to track for each task. Some common fields for tasks could be “Task Name”, “Due Date”, and “Status”. We can customize these fields based on what information is most important for us to keep track of.

Populate the table with some sample data. This will help us test the webhook later.

Screenshot with Baserow database with tasks

Step 2: Create a webhook endpoint

Let’s create a webhook endpoint.

We’ll use Zapier in this example, but there are other webhook services available as well.

Go to Zapier and log in. If you don’t have one, you’ll need to create a free account. Make a Zap to begin creating a new automated workflow.

We want our workflow to be triggered by a webhook, so select “Webhooks by Zapier” as the app that will start the process.

Within Zapier’s webhooks, there are different ways to be triggered. We’ll choose “Catch Hook” for this tutorial.

Zapier will provide a unique webhook URL. Copy this URL, since we’ll need it for the next step.

Step 3: Configure webhook in Baserow

This is where we tell Baserow what to do. We’ll set up a webhook that sends notifications whenever a new row is added to a Baserow table.

Let’s head over to our Baserow workspace and open the Tasks table we created earlier. Click on it, and then let’s create a new webhook.

There are different events that can trigger the webhook, but for now, let’s choose "Rows are created” so that the webhook triggers whenever a new row is added.

Make an HTTP POST request. Remember that webhook URL we copied earlier? Paste it into the URL field. The URL that you’re making the POST request to should be the same URL you generated in the previous step.

Configure webhook in Baserow

Click on Trigger test webhook.

Example payload:

{
    "table_id": 1203,
    "database_id": 262,
    "workspace_id": 165,
    "event_id": "00000000-0000-0000-0000-000000000000",
    "event_type": "rows.created",
    "items": [
        {
            "id": 0,
            "order": "1.00000000000000000000",
            "Task Name": "",
            "Due Date": null,
            "Status": null,
            "text": ""
        }
    ]
}

Step 4: Configure action in Zapier and test the integration

Here’s how we can set things up so you get updates about your Baserow data.

Head to your Tasks table in Baserow and create a row with some new information.

After setting up the webhook in Baserow, go back to Zapier and test the trigger to ensure it’s receiving data from Baserow.

Click on the “+” button to add an action step. Choose the app where you want to send the notification (e.g., Slack, Email, SMS). Set up the action by filling in the necessary details (e.g., recipient email, message text).

Open a specific Slack channel where you configured the webhook to send notifications. If everything is working correctly, you should see a notification pop up in that channel. This notification will reflect the changes you just made to the row in Baserow.

Test the action to ensure it’s working correctly.

Step 5: Activate the workflow

Once everything is configured and tested, turn on the Zap in Zapier.

Add a new row to your Baserow table to trigger the webhook and verify that the notification is sent.

Use cases with Baserow webhook

Explore use cases with Baserow webhook

Baserow makes it easy to create a system that perfectly fits your needs. This setup can be extended to various use cases beyond just notifying about row creation. The flexibility and customization options available make it easy to tailor these integrations to meet your specific needs.

Here are some additional scenarios where Baserow webhook integrations can be beneficial:

  1. Real-time data sync: Use webhooks to sync data between Baserow and other applications whenever a row is created, updated, or deleted. This ensures that all systems have the most current information without manual intervention.
  2. Automated reporting: Set up webhooks to trigger when a row is updated with specific criteria, such as hitting a sales target or completing a project milestone. This can automatically generate reports or send notifications to stakeholders.
  3. Inventory management: For businesses managing inventory in Baserow, use webhooks to update inventory levels in real-time across multiple platforms or trigger reorder notifications when stock reaches a predefined threshold.
  4. Customer relationship management (CRM): Automate updates to customer records in your CRM system (e.g., Salesforce, HubSpot) whenever a related row is created, updated, or deleted in Baserow. This ensures that customer data remains consistent across all platforms.
  5. Workflow approval: Implement a workflow approval system where changes made in Baserow trigger notifications or approval requests in other apps (e.g., Slack, Microsoft Teams) for managerial review and action.
  6. Data validation and quality control: Use webhooks to validate data integrity by triggering alerts or corrective actions when specific conditions are met or violated in Baserow, helping maintain data quality.
  7. Event management: Manage event registrations and attendee updates by integrating Baserow with event platforms. Trigger notifications or updates whenever there are changes in attendee lists or event details.
  8. Financial tracking: Integrate with accounting software like QuickBooks or Xero to automatically update financial records when transactions or invoices are added, updated, or deleted in Baserow.
  9. Project management: Enhance project tracking and management by integrating Baserow with project management tools (e.g., Monday.com, Jira). Automate updates, notifications, and task assignments based on changes in project-related data.
  10. Task automation: Integrate with task management tools like Trello or Asana. When a row is updated to mark a task as complete or update its status, trigger actions like moving cards between boards or updating task details.

These use cases demonstrate the versatility of Baserow webhooks beyond simple notifications, allowing robust automation and integration capabilities across various business processes to boost productivity and communication.

Summary

Congratulations! Following these steps, we have successfully set up an automation that sends notifications whenever a task is created in our Baserow database, without writing a single line of code.

This no-code solution helps keep the team informed and streamlines our project management process.

Feel free to explore more automations and customize them to fit your specific needs.