Creating new select options with Zapier

Hey Coda Community,

We started building a flexible CRM in Airtable in 2017 and it has grown out of hand. We’re wanting to migrate to Coda and simplify, but are running into a blocker whereby we are unable to create new options in a single/multi select field from Zapier. Is this not possible? Also, is there a limit to the number of options we can have? Thanks in advance!

Hey @brianswichkow, welcome to the Coda community!

If your selection list needs to be dynamic with options being regularly added to it, maybe replace it with a Lookup to a separate table? Then adding options will correspond to adding rows in that other table.

Simple select lists are best for e.g. selecting a task status or something like that. It it usually better to use lookups for any selections where options are related to some data records (e.g. regions, stores, people etc)

Hey there!

Smart choice to move from Airtable > Coda

I actually work full-time in both platforms so defintiely understand what it’s like to try to change narratives! If you need help in this platform transition let me know!

What I’ve learned while working in both is that sometimes things don’t directly translate from Airtable>Coda

While you may need to do one thing in Airtable via Zapier, there may be a more streamlined and native solution in Coda - or simply different

Happy to sit with your 30 min and just take a look at your project, give suggestions, and point you in the right direction!

Reach out to me here via DM or reach me directly at: scott@simpladocs.com

Thank you for this, Paul. We misspoke, it’s already a lookup field (not a single select), but it doesn’t seem that someone filling out a form can create a new record (i.e. adding their company to our linked database of companies that are associated with new contacts). Any ideas why?

Here’s a record we created from Zapier that intended to add a new record to the linked field. We got the error “{RECORD NAME} is not a valid row reference” rather than it creating that row.

Well, the way it works with Zapier and API in general — you pass the text value that’s a display value on that other table (e.g. a company name) and Coda shall resolve it to a proper reference.

Maybe the company Nanoleaf is not there yet? In that case you have a few options:

  • Add a zap step before this one that will add a missing company to the lookup table. You can do it with an Upsert Row action — it will insert a new company only if it’s not on the list yet.

  • Add an automation in Coda that will react on newly added rows, take these inserted text fields, create rows out of these and replace text fields with lookups. The automation code will be something like this:

If(
  [Step 1 Result].Company.IsFromTable(Companies) != true,
  RunActions(
    Companies.AddRow(Name, [Step 1 Result].Company.ToText()),
    [Step 1 Result].ModifyRows(Company, Companies.Filter(CurrentValue.Name = [Step 1 Result].Company.ToText()).First())
  ),
  _Noop()
)

Please let me know if this works for you, if not we can jump on a quick call and I’ll fix that for you in 5 mins or so.

1 Like