Google Docs: Create a document from template error: "Invalid JSON payload received. Unknown name "replaceText" at 'requests[6].replace_all_text': Proto field is not repeating, cannot start list."

Hello Makers, my scenario creates an invoice from a Google Docs template using Airtable data. It has started throwing an error, which I don’t understand and am unable to identify the cause. Could anyone point me in the right rection?

Error:

RuntimeError

[400] Invalid JSON payload received. Unknown name “replaceText” at ‘requests[6].replace_all_text’: Proto field is not repeating, cannot start list.

Scenario:

Module:

This is an existing scenario that has worked before. I’m wondering if a field might have changed that could cause this? Thanks!

1 Like

‘requests[6].replace_all_text’

The 6 indicates the count of the variable, so the sixth one from the top.

Airtable data was stored as an array as indicated in curly brackets [ ].

To solve the issue, I added to the Airtable formula a &“” to turn it into a text string.

1 Like

Heya @Zbulo :wave:

Awesome work figuring this out and thanks so much for stepping back in here and sharing your solution with the community :clap: Much much appreciated :pray:

PS: I’m gonna go ahead and mark your reply as a solution since it certainly deserves that :white_check_mark:

1 Like

This was helpful for me to identify the issue. Another way to solve the issue would be to use the “tostring” function in Make to turn the array into a string. I found this easier, as I didn’t have to go back and fiddle with the Airtable formula.

Thanks for sharing the problem and a solution!

2 Likes

Thanks for this thread. I didn’t really understand at first, so just to adding a little more dialogue if someone else is still trying to troubleshoot:

  1. Click download outputs from your module’s last run
  2. Under “requests” find the item that is formatted as an array
    As @Zbulo mentioned… the number in the error message represents the item in the requests array that is throwing the merge:
    ‘requests[6].replace_all_text’
  3. Go back to the main variable input section of the module and find the variable in the that you need to fix and add toString() around the data.

Worked perfectly for me! Thank you!

Hello there @Brandi_Bullock welcome to the community :wave:

I just wanted to quickly step in and say thank you for sharing these extra broken-down steps with us! I’m sure this will prove super helpful to someone in the future :pray:

Hey, this was helpful to troubleshoot an issue for me. Thanks!

1 Like

Heya @DM welcome to the community :wave:

Thanks a lot for letting us know that this has been helpful for you. That’s absolutely fantastic to hear :clap:

So I’ve been having a similar issue, except the toString() solution does not seem to help. If I use that, it does create the template, but I get brackets around the value.
image

This wouldn’t be much of an issue, except part of my scenario involves sending out an email. The weirdest part is that it is almost an exact copy of another scenario that works fine. That one just allows me to select from an element of the array when selecting the input.
The original scenario:
image

The new scenario:

1 Like

@Caroline_Murphy the brackets in the Airtable module indicate the string/array formatting of the source date. You may manipulate this by adapting the format of that field on Airtable and then running the respective Make Airtable module with test data to update.

Hey,

I’m having a similar issue and the format of the source is the same in the two scenarios but for a weird reason, Make does not treat the data in the same way. One works like a charm, the other simply doesn’t. This is frustrating …

Hi There,

Just to put my 2 cents, in case someone is using Baserow, I had the same issue with a Single Select field I called “Status” that includes some colors and values. Then I selected in the Google Docs Module the “Value” from the Array List.
It worked!

2 Likes