您请求的网页目前不支持您选择的语言。您可以使用 Google Chrome 的内置翻译功能将任何网页上的内容即时翻译为您选择的语言。

Importing data into Tables

You can import data from a number of sources, like Google Sheets, CSV/TSV files, or even formatted JSON files, to create tables and workspaces in Tables.

How to import data from Google Sheets into Tables

How to start an import

  1. You can import data from the Tables home page, or from within an existing Tables workspace.
    • From the Tables home page: click on the “+ New” button, and select the Import data option.
    • From an existing workspace: click the “+ Add Table” button in the tab bar, and then select Import.

 

2. In the pop up menu, you will be able to select a the data source you want to import from. Please ensure your data is formatted in an appropriate structure before importing (see guidelines below).

3. After uploading the file, a new table or workspace will be created with a copy of the data. This data is not synced with the original data source.

 

Importing from Sheets or CSV/TSV

You can import from Google Sheets or CSV/TSV files to bring data easily from an existing spreadsheet or external application.

Guidelines and limitations

  • Each spreadsheet tab or CSV/TSV file is required to have the first row of data be the column titles and should not be blank. If the first row is missing data, it may fail the import and result in partially imported data.
  • Import will convert all tabs in the Sheet as separate tables, or a CSV/TSV file into a single table. If you want to only import certain tabs of a Sheet, you’ll have to create a new copy and remove the unwanted tabs, or export the desired tabs as separate CSV/TSV files.
  • Importing from the Tables homepage will create a new workspace with the new tables, while importing from an existing workspace will add all the tables into the workspace.
  • Note: importing from Sheets will discard any embedded links in the text. We recommend leaving links as raw urls, which can then be linkified in text columns in Tables.
  • Imports are limited to 30MB files at this time.

Debugging import issues

Improperly formatted data

Please check to make sure that each spreadsheet tab has the first row of data as column titles and that the first row is not blank for any column of data. If the first row is missing data, it may fail the import and result in partially imported data.

Over the size or account limits

If your spreadsheet has more than 20 tabs in it, it will hit a limit that may truncate or cause the import to fail. If the tabs in your spreadsheet have more data that your current table limits allow, the data may also be truncated or may cause the import to fail. If you are at the limit of your account's table quota, this may also cause the import to fail or cause data to be truncated.

 

Importing from JSON 

You can also import from a specially-formatted JSON representation of a table or kanban board, which is a standard used for exporting from certain apps like Trello, etc.

JSON file format guidelines

The JSON object must have the following properties to define and import a table of data correctly:

Property Value
name

String

This maps to the table name

desc

String

This maps to the table description

rows

Object[] {...}

This array of objects will map to the rows in the table and must be in the format described in the Row Object JSON Format defined below.

dropdownOptions

Object[]  {
  id: String,

  name: String,
  color: String
}

This array of objects will map to a Dropdown-type column named "Dropdown" and its dropdown options (max of 100 options).

"id" and "name" are required, and "id" is a unique string used behind the scenes to associate rows with the particular option.

"color" must be one of: black, blue, green, lime, orange, pink, purple, red, sky, yellow.

tagOptions

Object[]  {
  id: String,
  name: String,
  color: String
}

This array of objects will map to a Tags-type column named "Tags" and its tag options (max of 100 options).

"id" and "name" are required, and "id" is a unique string used behind the scenes to associate rows with the particular option.

"color" must be one of: black, blue, green, lime, orange, pink, purple, red, sky, yellow.

userOptions

Object[]  {
  id: String,
  username: String,
}

This array of objects will map to another Tags-type column named "Users" that lets you tag users to each row. We use the Tags-type column since Person-type columns only support Google accounts. You can convert the column type to try to match the usernames against Google accounts in your domain.

"id" and "username" are required, and "id" is a unique string used behind the scenes to associate rows with the particular user.

 

Row object JSON format

Property Value
name

String

This maps to a Text-type "Name" column for the row

desc

String

This maps to a Text-type "Description" column for the row

closed

boolean

This is used to indicate whether the row should be hidden or archived. This will be represented in a Checkbox-type column named "Archived".

completed

boolean

This is used to indicate the status of the row. This will be represented in a Dropdown-type column named "Status", which has options "Completed" and "In progress".

due

String (or null)

This is used to set an optional due date in a Date-type column named "Due Date".

The string must have the date and time in RFC-3339 format, for example, April 22, 2021, 2:05 PM would be represented as: "2021-04-22T14:05:00.000Z"

idDropdown

String (or null)

This is used to indicate the dropdown option value for the row in the "Dropdown" column

idTags

String[] (can be empty)

This is used to indicate the selected tag options for the row in the the "Tags" column

idUsers

String[] (can be empty)

This is used to indicate the selected users for the row in the the "Users" column

attachments

Object[]  {
  url: String

}

This is an array of objects containing a "url", and maps to the Attachment URLs column

 

Here is an example of what the JSON file should look like:

{
  "name": "Table name",
  "desc": "Table description.",
  "rows": [
    {

      "name": "Task: buy pizza",
      "desc": "Order 2 pizzas for game night.",

      "closed": false,
      "completed": true,
      "due": "2021-04-22T14:05:00.000Z",
      "idDropdown": "dropdownOptionId01",
      "idTags": [
        "tagOptionId01", "tagOptionId02"
      ],
      "idUsers": [
        "userId42", "userId88"
      ],
      "attachments": [
        {
          "url": "http://attachment-url.com"
        }
      ]
    }
  ],

  "dropdownOptions": [
    {
      "id": "dropdownOptionId01",
      "name": "Team fun"
    },

    {
      "id": "dropdownOptionId02",
      "name": "Project Apple"
    }
  ],
  "tagOptions": [
    {
      "id": "tagOptionId01",
      "name": "Recruiting",
      "color": "green"
    },

    {
      "id": "tagOptionId02",
      "name": "Administrative",
      "color": "blue"
    }
  ],
  "userOptions": [
    {
      "id": "userId42",
      "username": "alexanderson",
    },

    {
      "id": "userId88",
      "username": "kellyklark",
    }
  ]
}

Exporting from Trello

You can export your data from Trello as a JSON file by following the instructions provided here.

The following fields are imported from Trello based JSONs:

  • Trello board name and description (maps to the table name and description)
  • Card information
    • names and descriptions
    • Trello list each card belongs to (maps to the "Dropdown" column)
    • Usernames of the members for each card (maps to the "Users" column)
    • Labels for each card (maps to the "Tags" column)
    • Due date and completion status for each card (maps to the "Due Date" and "Status" columns)
    • Whether or not the card is archived (maps to the "Archived" column)

 

Search
Clear search
Close search
Main menu
7949337499604315153
true
Search Help Center
true
true
true
false
false