Escaping Characters - Tell me all about it

I think this deserves a help topic. I couldn’t figure out how to search your KB :expressionless:

I’ve seen this scattered about on different responses to various posts, but it always seems to be a sub topic and not the main topic. I mean to say that the need to escape characters seemed secondary to the main problem.

In my case, I am enriching data because in order to patch (update) an airtable request, I need to know the record ID, so my enriching request is a GET request with a filterByFormula

So when my GET request arrives at the front door of airtable’s API I want them to read it as follows…{Variants: Id}=abc1234

Where you see abc1234 is where I will put {VariantId} which will work just fine. The issue is I need to escape the brackets or my request doesn’t appear to be able to work…

?filterByFormula="{What airtable calls the column but received by airtable in curly brackets}"={the search/filter value that will limit the results of the GET request}

From what I can tell, Airtable wants me to send the field I want to search in brackets because when I don’t I get a “INVALID_FILTER_BY_FORMULA” (and based on the community post hyperlinked above).

but when I do, Parabola says “URL refers to a column name that does not exist”, naturally because I can’t get it to escape the curly bracket in the endpoint.

I think it would be helpful to have a robust answer on this inconspicuous topic (or refer to one that has a complete answer) on the obvious ability/limitations/workarounds. (ex using , which I don’t believe works for curlys).

Also, if I am missing something, or can suggest a different approach (escaping the need to escape, if escaping is even possible) I would like to know that too.

Hey Dan,

Thanks for making a post about this topic. That’s a good point regarding escaped characters. Have you tried using this tool to try encoding your URL parameters? You’ll want to copy and paste the URL starting after the ?.

An easier workaround could be using a Filter rows step to target the Variant: Id column and filter based on the specified value.

Lastly, if you use the Pull from an API step using that URL structure the record Ids should be returned in a column called id.

Let me know if those methods will achieve the same end result you’re looking for.