Skip to main content
Sync data with Pack tables

Learn how to set up your Pack sync tables, allow for two-way sync, and get integrated data from your other tools directly into Coda

Updated over 2 months ago

With Pack tables, you can pull data from external tools (think Google Calendar, Spotify, Jira, and more) into your Coda doc. You can then display the data however you’d like, hide irrelevant fields, add your own columns, and so much more. The data in these tables is automatically kept up to date through regular syncs. With many Packs, you can even use two-way sync to make edits to the data in Coda and have those changes reflected in the external tool.

There are Pack tables available for many of your favorite Packs - from the Google Calendar Events table, to the Jira Issues table, to the Salesforce Records table. Read on to learn how to set up and customize these tables to fit your needs.

Within this article you’ll find...


Create a Packs table

Before you add a Packs table, you have to first install the Pack. Once that’s done, you can then browse which sync tables are available via the Building Blocks section of the Packs page (found under the Insert tab). From there, you can simply drag the desired table onto the canvas of your doc.

NEW add pack sync table - gcal events.gif

Alternatively, you can type a slash ( / ) followed by the Pack name directly into the canvas of your doc. Select the Pack from the drop-down menu, and the Pack page should open on the right. Find the table you’d like to add, and drag it into the canvas of your doc.

If you haven’t yet connected to an account for the Pack, you’ll be prompted to do so in order to sync data into your Pack table. Check out this article for info on connecting to Pack accounts.

Configure your table settings

So you've decided which sync table you need, you've added it to your doc, and you’ve connected it to an account. Now it's time to set up your sync and start pulling in data.

For certain Pack tables, you may immediately see a popup with a list of all the possible columns you can sync into your table. In this case, check or uncheck any fields you want to include. Then hit the Create table button.

Once your table is added, you'll see a large Sync now button, and a panel of sync settings on the right side of the page. Here is where you can specify - and filter - which data you want to sync into your table. You can always come back and modify these settings after you've synced in data. But we give you the opportunity to make some initial adjustments before your first sync. The settings include:

  • Refresh rate: This settings dictates how often the table data is re-synced: Manually, Daily, or Hourly (note that some options are limited to certain Coda pricing plans - see the callout below).

ℹ️ Hourly table refresh is available only on Team and Enterprise plans. If you're considering upgrading to one of these higher tiers, check out our pricing page.

  • Two-way sync: This option is only enabled for certain Pack tables. When toggled on, it allows you to make edits to the data directly in Coda, and have those edits reflected in the source data. Read more about two-way sync below.

  • Sync settings: These settings dictate what data is being pulled into the table, and which account is being used to do so. Read more about these sync settings below.

Sync settings

If you expand the Sync section within the table settings, you'll see some additional sync settings. These include...

  • Account: Choose which account you’d like to use to pull data. When you click into the drop-down, you’ll see any unrestricted accounts that have already been added to the Pack, plus the option to + Set up another account. Follow the prompts there to connect a new account, if needed.

  • Edit sync fields: This setting dictates who can change the settings found within the Sync section. When toggled on, only the owner of the sync account can change any of these fields. When toggled off, anyone with edit access to the page can adjust these settings. This setting is toggled ON by default.

  • Pack-specific fields: You may also see some Pack-specific fields. You can typically hover over the question mark (?) next to any of these fields to see an explanation. 💡Tip: Use these fields to filter the results that are pulled into your sync table.

Advanced settings

Under the Advanced tab, there are some additional important settings:

  • Table limit: Set the maximum row limit for this table (100, 1,000, or 10,000). 💡Tip: If you notice some rows are unexpectedly missing from your sync table, you may just need to increase the row limit then resync the table.

  • Keep un-synced rows: This comes in handy if you have applied filters to your sync. If this settings is toggled off, then rows will automatically disappear from this table once they no longer match your filter criteria.

  • Sync more properties: Check out the section below for more info on this.

Choose columns for your sync

Once you've synced in your table, you'll see a selection of visible columns for that Pack. But there may also be some additional hidden columns. By default, we bring in all available fields from the Pack. We hide some of these columns automatically, but you can unhide (or hide) any columns as you see fit.

If you’d like to adjust which columns are included each time the table is synced, you can do so via the Sync more properties tool. To find this, click on the down arrow to the right of the Refresh button (upper right corner of the table), then select Settings. Under the Advanced tab, click on the Sync more properties button. You can then select which columns you do - and don’t - wanted included in your sync table. Once you’ve made your adjustments, re-sync the table to see the changes.

NEW choose which columns to sync.gif

💡Tip: To improve performance of your doc, we recommend you only include the columns that you absolutely need and remove all others.

Enable two-way sync

For certain Packs in Coda, you can now enable two-way sync. This means that not only can you sync data from your third-party tool into Coda, you can also make edits to that data directly via your Coda table and have those edits reflected in the original tool.

Two-way sync is currently available for select 1st and 3rd party packs, including Cross-doc, Jira Cloud, Jira Data Center, Salesforce, Google Sheets, and Github.

To enable two-way sync for a Packs table, just follow these steps:

  1. In the upper right hand corner of your table, click on the down arrow (v icon) next to Refresh. Select Settings.

  2. Switch on the two-way sync toggle.

    1. An account that connects to the 3rd party tool is required for two-way sync. This is known as the write account, and is the account that will be used to push edits back to the 3rd party tool. Read more about setting up this account for two-way sync below.

  3. Under the Send edits automatically option, you can choose how edits made in Coda will be sent to the source tool. If this setting is toggled off, then edits in Coda will only be pushed to the source tool when someone clicks the Send edits button or when the next table refresh occurs. If this setting is toggled on, edits made in Coda will be reflected in the source data as soon as you’re done editing.

enable two way sync g sheets.gif

Now your two-way sync is ready to go! To make edits in Coda, just click into a cell and start typing.

  • If you’ve selected automatic updates in your two-way sync settings, the updates will be pushed as soon as you click out of a cell.

  • If you’ve opted to have updates sent manually, you’ll need to either push the Send edits button in the upper right corner of your table or wait for the next table refresh in order to push these edits to the source tool.

Accounts for two-way sync

ℹ️ Enabling two-way sync doesn’t automatically enable anyone to make edits to the data. Instead, we require each user to log into the tool to make edits by default. Through this, two-way sync reflects whatever permissions you may or may not already have to make edits in that tool.

When you enable two-way sync for a sync table, an account with the 3rd party tool is required. If you were the one to create the original sync table in Coda, we will automatically take the account used for that initial sync (called the read account) and use it as the account for the two-way sync (known as the write account). It will default to being a Private account, meaning only you can use this account for the two-way sync. When edits are pushed back to the 3rd party tool from Coda, they will use this write account.

If you’re enabling two-way sync on a table that was set up with someone else’s account, you’ll need to first connect your own account for the 3rd party tool. When edits are pushed back to the tool from Coda, they will use this account (known as the write account) to do so. Follow the steps in product to connect your account - and read more here if needed. It will default to being a Private account, meaning only you can use this account for the two-way sync.

Once you have successfully set up an account for the two-way sync, they have the option to change the account from Private (meaning only you will be able to make edits using this account) to a Shared account (meaning anyone with edit permission to the Coda table will be able to make two-way edits using this account). Once a Shared account is set up for two-way sync, then anyone with edit access to that Coda page will be able to make edits and utilize two-way sync without connecting their account.

💡 If you need a refresher on connecting to Pack accounts, check out this article.

Add additional Pack syncs

You can only have one of each Pack table in your doc (but remember you can add as many views as you like). For instance, you can only have one main Google Calendar Events table per doc.

But maybe you want to bring in multiple different calendars data sets, from different Google Calendars or even different Google accounts. Instead of creating a new Events table, you can just add more “syncs” to that main Events table. Just click the + Add another sync button from the table settings (as described in the previous section).

Each sync can use a different account and have different filter criteria. This lets you essentially build multiple Pack syncs into one table. You can then use filtered views to display these distinct syncs however you’d like.

FAQs

Why can't I add another Packs table for a Pack?

We only let you add one of each type of Pack table (e.g. You can only have one GMail Messages table). We do this since we always want related tables to magically link together. Check out the Add additional Pack syncs section above to learn more.

If I make changes to the sync table in Coda, will this be reflected in the data in the source tool?

Yes! With two-way sync, changes made in the Coda sync table will be reflected in the source tool. You can learn how to enable two-way sync in the section above.

Which Packs support two-way sync?

Currently, two-way sync is available in select 1st party Packs, including Cross-doc, Jira Cloud, Jira Data Center, Salesforce, Google Sheets, and Github. It’s also enabled in some 3rd party packs.

Why are only some of the fields in my two-way sync editable?

If you have two-way sync enabled for your table, you may notice that some of the fields in the table are editable in Coda and some are not. The fields that aren’t editable will have a slight grey background when you hover over them. These fields are typically limited by the third-party tool and their API. For example, in Cross-doc you can’t edit columns whose data is calculated by a formula.

Who can turn on two-way sync?

Anyone with edit access to the Coda page has access to the two-way sync setting. However, they will need to set up a private account linked to the 3rd party tool in order to actually enable two-way sync and start making edits.

How can I ensure that edits I make with two-way sync don’t overwrite edits someone makes in parallel in the other tool?

We recommend refreshing a table to get the latest data and using Send edits automatically to ensure you’re making edits to the lates data, and it syncs back up as soon as you’re done. This helps avoid cases where another user has made edits in the tool in parallel that clash with the ones you’re making.

When and how does Pack data refresh?

This is up to you! For each Pack table, you can set the refresh rate under the table settings. You can choose from Manual, Daily, or Hourly*. The default for new tables is Daily.

*Note that hourly refresh is only available for customers on Team or Enterprise plans. To upgrade to one of these plans, head to this page.

If you ever need to manually refresh a table, you can do so via the Refresh button in the upper right corner of the table.

How can I delete a column from my sync table?

In order to delete a column that's being synced in from the Pack, you need to first remove this column from the sync. To do so, go to the upper right corner of your table, and click on the small down arrow (next to Refresh), then select Settings. Click into the Advanced tab, and click Sync more properties. Uncheck the column(s) you wish to delete, then click Update and sync. Finally, return to the table, right click on the column header, and select Delete from the menu.

Need more help troubleshooting your Packs table?


Related resources

Did this answer your question?