Baserow Database
Hello everyone, I hope you're all good. Today I am launching a database extension for Baserow. It is an open source database and an Airtable alternative. This database bring all features that Airtable brings. This extension helps you to strore and get data with Baserow. This extension have mostly same block as of Airtable have. That's why it is easy to use and customise. This extension allow you to store almost all languages(I have tried only with Hindi , English and Vietnamese and Turkish) and it stores these languages.
Thanks @michael_ngo for sponsoring this extension.
Let's see its blocks and thier documentation.
All Blocks
Properties

Documenation
There are 9 events , 12 methods and 16 properties blocks.

This event raises when a column got. Values is a list of data and response is a JSON body that is return by baserow.

This event raises rows are got. Response content will be a JSON body that is returned by server and total rows will be number.

This event raises when a particular row got. Values is a list of cells that is return by server.

This event raises when name of all columns are got. Names is a list of all columns name that you table contains.

This event raises when you use Create Row block and row is created in your table. Response will be a JSON body returned by the server.

This event raises when a row or cell is updated. Response will be a JSON body returned by the server.

This event raises when any error occurs.

This event raises when a row is deleted. If the row is deleted then response variable will return Row Deleted.

This event raises when a row is moved to a particular index. Response will be a JSON body returned by the server.

This block helps you to create a row in table. Columns names and values must be list. If you entered any value wrong in column name then baserow will store null value to that row. If the row is created then Row Created event will be triggered.

This block helps you to get the column with column name and a limit that you want to recieve. Note:- Baserow has a limit of 200 maximum records so if you tried to get more than 200 then Error Occurred event will be triggered.
![]()
This block helps you to get all the columns names and fields id that your table contains. GotColumnsNames event will be trieggered with a list of all cloumns names.

This block helps you to fetch a particular row in your table. Got Row event will be triggered with a list of all values ot that row.

This block helps you to delete a particular row from your table. RowDeleted event will be triggered if row deleting success.

This block will helps you to fetch the data with given filter. Filter will be applied to the given field id with max record. Value accept the Filter valoue. For ex, if you’re using euqal filter then the value should be the string that you want to fing equal to. If not needed then you can leave it as an empty string. Got All Rows event will be triggered when the block got the values.

This block helps you to fetch such rows that contains given text. for ex, I have three rows in my table
| Firstname | Lastname | Age |
|---|---|---|
| Jill | Smith | 50 |
| Eve | Jackson | 94 |
| John | Doe | 80 |
And I used this block and searched Jill then the first row will be fetched and GotAllRows event will be triggered and if you searched j then all the rows will be fecthed as all row contains J letter in their cells. It is a type of filter that Baserow offers.

This block helps you to fetch all the rows of table with a limit size. GotAllRow event will be triggered with a JSON response body and a integer that contains total number of the rows present in your table.

This block helps you to move a particular row to a particular index. for ex I have three rows with id 1,2,3
| ID | Firstname | Lastname | Age |
|---|---|---|---|
| 1 | Jill | Smith | 50 |
| 2 | Eve | Jackson | 94 |
| 3 | John | Doe | 80 |
If I want to move the last row to the top of the table then I wills imply pass the id of the last row to row Id parameter and first row's id to before Id parameter then the updated result will be like below.
| ID | Firstname | Lastname | Age |
|---|---|---|---|
| 3 | John | Doe | 80 |
| 1 | Jill | Smith | 50 |
| 2 | Eve | Jackson | 94 |
RowMoved event will be triggered with a JSON response body. I hope you got this.

This block fetches the all row in ascending or descending order of a particular column. column Name parameter accept the column name that you want to filter. And technique parameter accept string in which order you want to filter the row, There are two properties avaliable for technique.
for exampe,
| ID | Firstname | Lastname | Age |
|---|---|---|---|
| 1 | Jill | Smith | 50 |
| 2 | Eve | Jackson | 94 |
| 3 | John | Doe | 80 |
If you want to fetch the rows in ascending order of age simply pass the Ascending property to technique parameter and Age to column Name parameter. And the data will be fetched in acsending order of Age column like this.
| ID | Firstname | Lastname | Age |
|---|---|---|---|
| 1 | Jill | Smith | 50 |
| 3 | John | Doe | 80 |
| 2 | Eve | Jackson | 94 |
GotAllRows event will be triggered with a JSON response body and total number of the rows of table. I hope you got this.

This block helps you to set or update the cell of a particular row of given id, column Name and the cell value. Row Updated event will be triggered when it will updated.

This block helps you to extract the list of a particular column by response received from the events.
For example, if you have a response received by the Got All Row event.
{
"count": 1024,
"next": "https://api.baserow.io/api/database/rows/table/4946/?page=2",
"previous": null,
"results": [
{
"id": 0,
"order": "1.00000000000000000000",
"Name": "string",
"Last name": "string"
},
{
"id": 0,
"order": "1.00000000000000000000",
"Name": "string",
"Last name": "string"
}
]
}
If you want to get all the names from this json response then simply pass this json text to response parameter and Name to column Name. And the block will return you the list of all names.
)
Two properties for defining the techique while fetching rows with technique.

This block is for setting or getting the Table ID.

This block is for setting and getting the token. It is main thing for authenticating with your database. You need to generate it within your account.

A property for setting the URL for self hosting. If you are not using self host then ignore it.

These are the available properties for defining the filters. You can see here the usage of filters in docs.
I hope you understood the documentation.
Usage
Let see usage of blocks
Creating a Row

Make sure to enter the token and table id before you use any block.
Response
{
"id":3,
"order":"1.00000000000000000000",
"Name":"Sumit",
"Last name":"Kumar"
}
Creating row with Hindi language

You can also use other languages for string data.
Response
{
"id":4,
"order":"2.00000000000000000000",
"Name":"सुमित",
"Last name":"कुमार"
}
Creating row with Turkish language

Response
{
"id":6,
"order":"4.00000000000000000000",
"Name":"ç, ş , ö , ü , ı ,ğ",
"Last name":"Turkish"
}
Creating row with Vietnamese language

Response
{
"id":5,
"order":"3.00000000000000000000",
"Name":"Tôi là người việt nam",
"Last name":"Vietnamese"
}
Filtering the Data

Filter will be applied to the given field id with max record. Value accept the Filter valoue. For ex, if you’re using euqal filter then the value should be the string that you want to fing equal to. If not needed then you can leave it as an empty string. Got All Rows event will be triggered when the block got the values.
Getting the Data

I have tried here getting data of Hindi language for showing you.
Response
I recieved a list of values in Hindi (सुमित कुमार).
Searching Data

There are two rows in which one of them contain S letter so I am going to search it
Response
{
"count":1,
"next":null,
"previous":null,
"results":[
{
"id":3,
"order":"1.00000000000000000000",
"Name":"Sumit",
"Last name":"Kumar"
}
]
}
Important Note
There are some important thing that you must know before going to use it.
Row Id != Row Number. Mean row id is given by baserow database when you create the rows. And it is the unique identity of a row. For ex, first row of your table's Id will be 1 if you delete it then the next newly created row's Id will be 2 not 1. So make sure to use correct I'd while updating and fetching the data. You can extract the row id of the newly created row from the JSON response received from Row Created event
You can use dictionary block for decoding the responses received by the event blocks.
Download
Credit
Thanks to @shreyash for his super powerful
Rush .
Suggestion and issue are welcome
More filters and features are coming in future so Get ready for it.
If you like the extension then like the topic
Thank You All
Donate
If you like my work then donate if you can
.















. Downloads links are added in the above on topic.

