Skip to content

This is the Baserow connector for Convertigo, The connector provides a Data source for Convertigo NoCode Forms as well as back-end sequences for Low Code Projects.

Notifications You must be signed in to change notification settings

convertigo/c8oprj-lib-baserow

Repository files navigation

lib_BaseRow

This is the Baserow connector for Convertigo. Use this connector to exchange data with Baserow databases.

Symbols

This library uses the following symbols

Symbol Usage
lib_baserow.server the host name of the baserow server
lib_baserow.port the port baserow server, set to 443 for https, to 80 for http
lib_baserow.https set to true for https, to false otherwise
lib_baserow.password.secret The baserow admin password
lib_baserow.adminuser The baserow admin user email.

For more technical informations : documentation

Installation

  1. In your Convertigo Studio use File->Import->Convertigo->Convertigo Project and hit the Next button

  2. In the dialog Project remote URL field, paste the text below:

    UsageClick the copy button
    To contribute
    lib_BaseRow=https://github.com/convertigo/c8oprj-lib-baserow.git:branch=master
    
    To simply use
    lib_BaseRow=https://github.com/convertigo/c8oprj-lib-baserow/archive/master.zip
    
  3. Click the Finish button. This will automatically import the lib_BaseRow project

Sequences

AdminLogin

Establishes a session with Baserow. Must be called before any other API

variables

namecomment
emailThe Base row admin email
passwordThe baserow admin password

AdminUserCreate

Create a user

variables

namecomment
email
language
name
password

AdminUserDelete

Delete a User

variables

namecomment
user_idThe id of the user to delete

ApplicationsList

Lists all applications (databases) in baserow

AssetFileUpload

Uploads a file asset, the returned link can be used to be set as a value of a 'file' Type cell

variables

namecomment
apikeyThe API Key
fileA File variable holding the path to the file to be uploaded

ClearTableIdCache

DatabaseTokenCreate

Create a Token to acess databases within a group. This token will hold permissions to specific databases in the group

variables

namecomment
group_idThe ID of the group holding the databases to get a token to (Unique)
nameToken Name

DatabaseTokenDelete

Delete a previously created Token by providing its id

variables

namecomment
token_idDeletes the token related to the provided value.

DatabaseTokenList

Create a Token to acess databases within a group. This token will hold permissions to specific databases in the group

FieldsList

Lists all the fields in a baserow table

variables

namecomment
table_idReturns only the fields of the table related to the provided value.

FieldsListApiKey

Lists all the fields in a baserow table

variables

namecomment
apikey
table_idReturns only the fields of the table related to the provided value.

forms_AddRow

Add a row to a Baserow table. Each column of the table must have the same name as the technicalID of a field on the form. Forms fields can be any type, but usually select lists are mapped on Baserow Linked Columns.

variables

namecomment
doc
forms_configCreates a row in a table with a given configuration
originalDoc

formssource_GetFieldValues

Get all possible values for a given field to feed a Select

variables

namecomment
forms_configFills the select component from data with a given configuration. The first column will be the displayed item in the select, the second column will be the value of this item

formssource_GetSelectData

Get data from a Baserow table as options for a Select component. You will be able to choose the Baserow columns for the names to be displayed in the select dropdown list and the column for the values of each name.

variables

namecomment
forms_configFills the select component from data with a given configuration. The first column will be the displayed item in the select, the second column will be the value of this item
forms_filterFilters
forms_FilterA custom filter following JSON styntax
modelIf true, just return one line of data so that No Code studio can compte the table model

formssource_GetTableData

Get data from a Baserow table for a data grid. Each column of the Baserow table will be displayed as the same column in the data grid

variables

namecomment
forms_configReturns the rows of the table with a given configuration
forms_tableFilterFilters
modelIf true, just return one line of data so that No Code studio can compte the table model

FSExecuteView

Execute a FullSync View

variables

namecomment
_use_ddoc
_use_descending
_use_endkey
_use_group
_use_group_level
_use_key
_use_limit
_use_reduce
_use_startkey
_use_view

FSPullAndPushTable

Push a BaserowTable to FullSync for offline access

variables

namecomment
chunkSize
table_idThe table id to create and start an export job for

GroupsList

Lists all Groups for the current user

TableBulkExportToCSV

Exports a Table to CSV.. Export status must me monitored with the TableBulkExportWaitFinished sequence

variables

namecomment
table_idThe table id to create and start an export job for

TableBulkExportWaitFInished

Wait for an export job to be finished. Will return the URL to the exported data

variables

namecomment
job_idThe job id to lookup information about.

TableBulkImportFromCSV

Uploads a CSV to a table. Each CSV column will be mapped to the existing table Column. If there is more columns in the CSV than in the table additional columns will not be mapped.

variables

namecomment
chunkSizeThe Number of lines imported for each loop
filesList of CSV files to be imported in the table . Can be only one
fileSeparatorThe column seperatorr ( , or ; )
firstLineColumnSet to true if the first CSV lines represents columns names
quoteCharThe character to be used to identify strings ion the CSV file (Usually " but can be ')
table_idThe table ID (Can also be a generic 'Workspace~>Base~>Table' definition)

TableBulkUpdateFromCSV

Updates or inserts data in a Table from a CSV file. Given a list of column names, the sequence will update all lines from the CSV where the column names will be considered as unique ids. If CSV file contains lines not matching the columns names, they will be added to the table.

variables

namecomment
chunkSizeThe Number of lines imported for each loop
filesList of CSV files to be imported in the table . Can be only one
fileSeparatorThe column seperatorr ( , or ; )
firstLineColumnSet to true if the first CSV lines represents columns names
quoteCharThe character to be used to identify strings ion the CSV file (Usually " but can be ')
table_idThe table ID (Can also be a generic 'Workspace~>Base~>Table' definition)
uniqueFieldsList of fields name representing an unique line in the CSV identifying the line to be updated in the table. (Can be only one field)

TableCreateRow

Creates a row in a table

variables

namecomment
beforeIf provided then the newly created row will be positioned before the row with the provided id.
dataA JSON object with each field name and value
table_idInsert row in this table_id

TableCreateRowApiKey

Creates a row in a table using an apikey instead of credentials

variables

namecomment
apikey
beforeIf provided then the newly created row will be positioned before the row with the provided id.
dataA JSON object with each field name and value
table_idInsert row in this table_id

TableCreateRows

Creates a row in a table

variables

namecomment
dataA JSON object with each field name and value
table_idInsert row in this table_id

TableCreateRowsApiKey

Creates a row in a table

variables

namecomment
apikey
dataA JSON object with each field name and value, such as: {"items" : [{"field1":"value1", "field2": "value2"}, {"field1":"value1B", "field2": "value2B"}]}
table_idInsert row in this table_id
user_field_namesA flag query parameter which if provided this endpoint will expect and return the user specified field names instead of internal Baserow field names (field_123 etc).

TableCreateView

Creates a new view for the table related

variables

namecomment
apikey
data
table_idInsert row in this table_id

TableCreateViewFilter

Updates the existing filter if the authorized user has access to the related database's group.

variables

namecomment
apikey
data
table_idReturns only the fields of the table related to the provided value.
view_idCreates a filter for the view related to the provided value.

TableDeleteAllRows

Deletes all rows from a table

variables

namecomment
chunkSizeThe Number of lines deleted for each loop
table_idThe table ID (Can also be a generic 'Workspace~>Base~>Table' definition)

TableDeleteRow

deletes a row from a from a given table

variables

namecomment
row_idDeletes the row related to the value.
table_idReturns the rows of the table related to the provided value.

TableDeleteView

Deletes the existing view if the authorized user has access to the related database's group. Note that all the related settings of the view are going to be deleted also. The data stays intact after deleting the view because this is related to the table and not the view.

variables

namecomment
apikey
view_idDeletes the view related to the provided value.

TableGetData

Gets data from a given table

variables

namecomment
describeStructure
excludeAll the fields are included in the response by default. You can select a subset of fields by providing the exclude query parameter. If you for example provide the following GET parameter `exclude=field_1,field_2` then the fields with id `1` and id `2` are going to be excluded from the selection and response. If the `user_field_names` parameter is provided then instead exclude should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `exclude=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `exclude=My Field,Field with \"`.
filterExpressionA JSON Structure representing the filters in the form :
{
	"mode": "AND",  // Can be AND or OR
	"filters": [
		{
			"field": "Name",  	// The name of the column to filter on
			"op": "contains",	// the operation, can be any of the operations described below
			"value": "Little"	// The value of the filter operation
		},
		{
			"field": "Description",
			"op": "contains",
			"value": "1954"
		}
	]
}

operations

Filter Example value Full example
equal string field is 'string'
not_equal string field is not 'string'
date_equal 2020-01-01 field is date '2020-01-01'
date_not_equal 2020-01-01 field is not date '2020-01-01'
date_equals_today field is today
date_before_today field is before today
date_after_today field is after today
date_equals_days_ago Europe/Paris?1 field is days ago 'Europe/Paris?1'
date_equals_months_ago Europe/Paris?1 field is months ago 'Europe/Paris?1'
date_equals_years_ago Europe/Paris?1 field is years ago 'Europe/Paris?1'
date_equals_week field in this week
date_equals_month field in this month
date_equals_year field in this year
date_equals_day_of_month 1 field day of month is '1'
date_before 2020-01-01 field is before date '2020-01-01'
date_after 2020-01-01 field is after date '2020-01-01'
contains string field contains 'string'
filename_contains string field filename contains 'string'
has_file_type image / document field has file type 'image / document'
contains_not string field contains not 'string'
length_is_lower_than 5 field length is lower than '5'
higher_than 100 field higher than '100'
lower_than 100 field lower than '100'
single_select_equal 1 field is '1'
single_select_not_equal 1 field is not '1'
boolean true field is 'true'
link_row_has 1 field has '1'
link_row_has_not 1 field has not '1'
link_row_contains string field contains 'string'
link_row_not_contains string field contains not 'string'
multiple_select_has 1 field has '1'
multiple_select_has_not 1 field has not '1'
empty field is empty
not_empty field is not empty
include_fieldsAll the fields are included in the response by default. You can select a subset of fields by providing the include query parameter. If you for example provide the following GET parameter `include=field_1,field_2` then only the fields withid `1` and id `2` are going to be selected and included in the response. If the `user_field_names` parameter is provided then instead include should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `include=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `include=My Field,Field with \"`.
order_byOptionally the rows can be ordered by provided field ids separated by comma. By default a field is ordered in ascending (A-Z) order, but by prepending the field with a '-' it can be ordered descending (Z-A). If the `user_field_names` parameter is provided then instead order_by should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `order_by=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `order_by=My Field,Field with \"`.
pageDefines which page of rows should be returned.
searchIf provided only rows with data that matches the search query are going to be returned.
sizeDefines how many rows should be returned per page.
table_idReturns the rows of the table related to the provided value.
view_idIncludes all the filters and sorts of the provided view.

TableGetDataApiKey

Gets data from a given table

variables

namecomment
apikey
excludeAll the fields are included in the response by default. You can select a subset of fields by providing the exclude query parameter. If you for example provide the following GET parameter `exclude=field_1,field_2` then the fields with id `1` and id `2` are going to be excluded from the selection and response. If the `user_field_names` parameter is provided then instead exclude should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `exclude=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `exclude=My Field,Field with \"`.
filterExpressionA JSON Structure representing the filters in the form :
{
	"mode": "AND",  // Can be AND or OR
	"filters": [
		{
			"field": "Name",  	// The name of the column to filter on
			"op": "contains",	// the operation, can be any of the operations described below
			"value": "Little"	// The value of the filter operation
		},
		{
			"field": "Description",
			"op": "contains",
			"value": "1954"
		}
	]
}

operations

Filter Example value Full example
equal string field is 'string'
not_equal string field is not 'string'
date_equal 2020-01-01 field is date '2020-01-01'
date_not_equal 2020-01-01 field is not date '2020-01-01'
date_equals_today field is today
date_before_today field is before today
date_after_today field is after today
date_equals_days_ago Europe/Paris?1 field is days ago 'Europe/Paris?1'
date_equals_months_ago Europe/Paris?1 field is months ago 'Europe/Paris?1'
date_equals_years_ago Europe/Paris?1 field is years ago 'Europe/Paris?1'
date_equals_week field in this week
date_equals_month field in this month
date_equals_year field in this year
date_equals_day_of_month 1 field day of month is '1'
date_before 2020-01-01 field is before date '2020-01-01'
date_after 2020-01-01 field is after date '2020-01-01'
contains string field contains 'string'
filename_contains string field filename contains 'string'
has_file_type image / document field has file type 'image / document'
contains_not string field contains not 'string'
length_is_lower_than 5 field length is lower than '5'
higher_than 100 field higher than '100'
lower_than 100 field lower than '100'
single_select_equal 1 field is '1'
single_select_not_equal 1 field is not '1'
boolean true field is 'true'
link_row_has 1 field has '1'
link_row_has_not 1 field has not '1'
link_row_contains string field contains 'string'
link_row_not_contains string field contains not 'string'
multiple_select_has 1 field has '1'
multiple_select_has_not 1 field has not '1'
empty field is empty
not_empty field is not empty
include_fieldsAll the fields are included in the response by default. You can select a subset of fields by providing the include query parameter. If you for example provide the following GET parameter `include=field_1,field_2` then only the fields withid `1` and id `2` are going to be selected and included in the response. If the `user_field_names` parameter is provided then instead include should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `include=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `include=My Field,Field with \"`.
order_byOptionally the rows can be ordered by provided field ids separated by comma. By default a field is ordered in ascending (A-Z) order, but by prepending the field with a '-' it can be ordered descending (Z-A). If the `user_field_names` parameter is provided then instead order_by should be a comma separated list of the actual field names. For field names with commas you should surround the name with quotes like so: `order_by=My Field,"Field With , "`. A backslash can be used to escape field names which contain double quotes like so: `order_by=My Field,Field with \"`.
pageDefines which page of rows should be returned.
searchIf provided only rows with data that matches the search query are going to be returned.
sizeDefines how many rows should be returned per page.
table_idReturns the rows of the table related to the provided value.
view_idIncludes all the filters and sorts of the provided view.

TableGetRowByIdApiKey

Gets data from a given table

variables

namecomment
apikey
row_idReturns the row related the provided value.
table_idReturns the rows of the table related to the provided value.

TableGetViews

List all views for the table related

variables

namecomment
apikey
includeA comma separated list of extra attributes to include on each view in the response. The supported attributes are filters, sortings and decorations. For example include=filters,sortings will add the attributes filters and sortings to every returned view, containing a list of the views filters and sortings respectively.
limitThe maximum amount of views that must be returned. This endpoint doesn't support pagination, but if you for example just need to fetch the first view, you can do that by setting a limit. There isn't a limit by default.
table_idReturns only views of the table related to the provided value.
typeOptionally filter on the view type. If provided, only views of that type will be returned.

TableReadRow

Reads a row from a from a given table

variables

namecomment
row_idDeletes the row related to the value.
table_idReturns the rows of the table related to the provided value.

TableUpdateRowApiKey

Updates a row in a table ising apikey instead of credentials

variables

namecomment
apikey
data
row_idInsert row in this table_id
table_idInsert row in this table_id

TokenGetOrRefresh

Gets a token or refresh it if the token is expired the Token will be placed in the current user session

Mobile Library

Describes the mobile application global properties

Shared Components

BaseRowGrid

Provides an infinite paginated Grid that can be fed by data from a BaseRow No Code database.

variables

namecomment
accessibilityboolean: true (default) or false
ariaLabel
autoSizeColumns
classOne of the themes provided here :

https://www.ag-grid.com/javascript-grid-themes-provided/

Also be shure to add the theme in the Theme object as :

@import "../../node_modules/ag-grid-community/dist/styles/ag-theme-balham-dark/sass/ag-theme-balham-dark.scss";

defaultColDefdefault is {hide: false, editable: true, sortable: true, resizable: true, filter: true, checkboxSelection: false, singleClickEdit: false}
FiltersAn JSON object containing the filter to apply to a BaseRow filtered view where each filter is the exact name of the filter variable attached to a filtered list sequence :
{
	filter<And/Or><Column Name 1><Op>: <filter to apply N° 1>,
	filter<And/Or><Column Name 2><Op>: <filter to apply N° 2>
}

for example for Sequence GTFSPlacesSmallAirportsList :

NB: Be sure to use simple quotes in your JSON structure for strings

{
	filterAndTypeContains: 'small_airport',
	filterAndIso_countryEqual: 'FR'
}

Will fill the grid with all records where column Type Contains to small_airports and column Type Contains to Iso_countryEqual equals FR. Filter names will be imported from the No Code Database view.

heightheight is 'auto' or value in % or px
idAn Optional ID
ListSequenceNameThe BaseRow CRUD "List" sequence name imported from the NoCode View. For example :
MyProject.Hotel_BookingsRoomsList

Where MyProject is the name of the project holding the Sequence and Hotel_BookingsRoomsList is the name of the Sequence in this project.

overlayLoadingTemplate
overlayNoRowsTemplate
paginationPageSizeinteger: 10 by default
rowDeselectionboolean: true (default) or false
rowHeightHeight of the row in pixels as a string
rowSelectionstring: 'single' (default) or 'multiple'
SearchWill only return data that matches this search whatever the column is
suppressCellSelection
suppressRowClickSelection
widthwidth value in % or px
wrapperClassHeight of the row in pixels as a string

About

This is the Baserow connector for Convertigo, The connector provides a Data source for Convertigo NoCode Forms as well as back-end sequences for Low Code Projects.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •