How to update a Notion database with new CSV files from Google Drive
I’m new to Zapier and Notion and am looking forward to the potential. With that said, I’m far from a coding/data manipulation expert :)
Here’s what I’m trying to do:
What a specific Google Drive folder for a new CSV
Update a Notion database with any changes found in the CSV using a CUST ID field
Add any items from the CSV to the Notion database
What I’ve tried:
I asked Zapier AI for some help and arrived at the following:
New file in folder in Google Drive
Connected to Drive, selected the folder, tested connection
Update database item in Notion
Connected to Notion, selected the database
Here’s were I run into a wall
When I try to map the fields the pop displays fields/properties of the folder and file, not the data IN the file (screen shot shows result after clicking “+” in “Item” field
It seems like I need to load the csv data into temporary table, or something - but I haven’t found any topics addressing that
Once I get the access to the CSV, my next question is how do tell zapier which field in the csv file to use when looking up records to update in Notion?
That will allow you to get the CSV file row data, then iterate thru each row.
Thanks for the pointers!
I successfully created the Line Items from CSV and now see the fields when I go to map them in the Update Notion Database step.
I’m stumped on the actual means to tel zapier to “check the Notion CUSTOMER datebase and make any updates based on the CUSTOMER ID field”. I assume once that step completes, I would add the loop module to add New Items to the Notion CUSTOMER database?
@shophighst
Data from the Files by Zapier step should be mapped to the Looping step, then from the Looping step to the Notion steps.
For us to have more info, post screenshots showing how your Zap steps are outlined and configured in EDIT mode with the field mappings visible.
I currently have 4 steps in my Zap (screen shots for each step is provided below):
New folder in Google Drive Folder: Watches a specific Google Drive folder for a new CSV
New Items from CSV: Pulls the data from the CSV
Loop (tbh - I don’t fully understand this step): I mapped 3 fields to start - CUST ID, FIRST NAME, LAST NAME.
Update Notion Database: Need Zapier to look for a matching CUST ID and update. However, the test is failing because the loop step seems to be creating a comma separated string of all CUST ID’s, FIRST NAMES, and LAST NAMES, rather than creating individual lines. I’m not sure where I went wrong in configuring
Once those four steps finish, then I need Zapier to add any missing records to the Notion DBase
@shophighst
You currently have variables mapped from Step 2 to Step 4.
You need to map variables from the Looping Step 3 to the Step 4.
Previous guidance:
Data from the Files by Zapier step should be mapped to the Looping step, then from the Looping step to the Notion steps.
UGH! I see that now. I corrected, and the test failed because the “test” record is a CUST ID that is not Notion. How would I go about telling Zapier to add that record in Notion?
I believe it worked … I used the “Find item in database” function and checked the add item if not found option at the bottom. Going to retest now with all fields mapped. Thanks again for the help!!!!!
Wow! Thank you for confirming that your workaround got the Zap running. This will significantly help our Community members to have as a reference for the same issue.
I’m so close (I think) … I’m now running into an error in the last step (see screenshots below). The same error was happening on “first visit”, “last visit” and “birthday” - I deleted them form Notion and zapier, tinkered, re-added and it somehow they’ve stopped appearing (I’m hoping they don’t pop once I clear this error).
The error is:
Failed to find or create a database item in Notion
body failed validation. Fix one: body.properties.SQUARE CUST ID.id should be defined, instead was `undefined`. body.properties.SQUARE CUST ID.name should be defined, instead was `undefined`. body.properties.SQUARE CUST ID.start should be defined, instead was `undefined`.
“SQUARE CUST ID” is in the CSV file and is being loaded as “Customer ID” and going into the “Square ID” field in the Notion database. I’ve spent a couple hours trying to figure this out and am officially stumped
Thanks again for the help + support!!!
Hi @shophighst,
Before we dig deeper into this, would you mind sharing a detailed screenshot of the “CONFIGURE” section of your Notion action step? Please ensure to capture all of its fields.
Please don't include personal information in the screenshot, or be sure blur out any personal information.
Thanks!
Hello @ken.a ,
I included 3 screenshots on my last post that shows the full config screen of the Notion step. Let me know if there’s something else that would be helpful.
Hi @shophighst,
It looks like you have sent a screenshot of the “Test” section of the action step. Here’s an example screenshot that you’ve sent: