


If you don’t have these, install them with the following commands in your console:įirst, update the system: sudo apt update We recommend using this script under Linux/Ubuntu with Python 3.8 and pip3. If you have a text column with latitude-longitude data in the format of, you can import this to SeaTable as a text column and change its type to geolocation/lng_lat. The Airtable doesn’t have a geolocation type. The options that are not used in the Airtable base are not imported. Pay attention to the scaling (total star number in the original base) as this is not imported. Imported as number, and you can manually change its type to rating before or after the rows import. You can change the number format before or after the rows import. Long text (With or without rich text formatting enabled)Īrray of numbers, strings, booleans, or objectsĪs Airtable doesn’t have the type of link formula (but explicitly rollup, count, and lookup), these can only be added per hand. Last modifiers can be imported as text, or as single select options (see below “Single select”). The results are imported as text, number, or date. Varied outputs (depending on the formula) If imported as number in seconds, you can simply change the type to duration. As Airtable doesn’t have the type of link formula (but explicitly rollup, count, and lookup), these can only be added per hand. Text type is recommended, as numbers cannot start with “0” just in case.Ĭollaborators are imported as multiple select options. If not changed, it’ll be imported as text if changed, the auto number will not be the same order as in Airtable, because the imported rows are not ordered (see below “Good to know”).Ĭan be imported as text or number. You have the choice: to change or not to change the column type before/after importing the rows. The most column types of Airtable are the same as SeaTable, there are only minor differences, this following table shows you the exact differences of data types, how they are imported and how you can handle them: You must provide your Airtable API key, your Airtable base ID and your SeaTable server URL, as well as your SeaTable base API token. Your computer has to be able to run Python 3 and pip3 and has internet connection. You won’t lose any data with this script. This script only reads from your Airtable base. You’ll only have to work on the columns headers, that’s all! does this script alter data in my Airtable base? When configured, the script will also automatically add the links in the “Link to other records” columns. It creates the tables and columns before filling the data and lets you manually adjust them before the real import. The script then writes these structures (tables, columns) into your SeaTable base and fills in the rows. The SeaTable API in comparison, by the way, returns all the columns, including empty ones, in the response object. Let’s say, for example, you have 103 rows in your Airtable base, and the Airtable API returns 100 rows of data and exactly misses those 3 rows where a column only has records in. With this data, this script can read out the tables and column structures of all the data types, and the rows data as well.Įmpty columns are not returned, which is a limitation of the Airtable API. The Airtable API returns 100 rows of data per request. How it works in general how is the data retrieved
#AIRTABLE SCRIPTING MANUAL#
However, due to the limitation of the Airtable API, you might need to do some manual preparations to make the import perfect, but this script is definitely worthy of use, especially if you have hundreds, thousands, or even more rows in your Airtable base. Generally, this works like a clock and saves a lot of effort compared to what you’d have to do to manually migrate the bases (e.g.
