Setting up attachments via API remains unnamed

Hi !
I’m trying to figure out why I can setup an URL but not a filename to the attachments when updating fields via API.
Here’s my code, which doesn’t work but doesn’t provide error at all:

for (var i = 0; i < result.airtable.selectQueryResult.rows.length; i++) {
await lib.airtable.query['@0.5.2'].update({
baseId: `app84oJeleATU5N53`,
table: `My bundles`,
where: [
  'Name': `${result.airtable.selectQueryResult.rows[i].fields['Name']}`
limit: {
  'count': 0,
  'offset': 0
fields: {
  'QRCodeImage': [ {
    "url": `${result.airtable.selectQueryResult.rows[i].fields['QRCodeLink']}`,
    "filename": `${result.airtable.selectQueryResult.rows[i].fields['Name']}`,
  } ]
typecast: false

Thanks a lot for any help

1 Like

I have seen this as well and I was too busy to figure out what I was doing wrong (if at all). I think it’s a bug because I tested many variants and never got it to work in this example.

filename doesn’t save, but url does…

Thanks for documenting this.

Yes I hoped I was not alone and it’s true :wink:
This is a huge lack in the API because it means you have to rename all the attachments when beating something automated, even a few.

Hi Bill

I’ve figured out how to setup dropbox to provide the csv file using your example but creating a new entry in the CSV table instead of updating the same entry.

I’ve hit a problem where the attachment and the filename for the attachment is the same for all new entries even when I’ve used a variable to change the filename. The source for the attachment in dropbox has been edited but the contents of the CSV is the same for all new entries. Is this the bug you’re talking about?

I need to know so I can move on with the development of my app until the bug is addressed.


Yep, that’s the issue I had previously documented and there’s no easy workaround.

In my integration work I’ve become so disenchanted with CSV as a data source that I avoid it entirely. I recommend to all clients that they create a sustainable data flow process by eliminating or neutralizing the negative outcomes of CSV documents.

This doesn’t require that CSV’s themselves be eliminated, but it does require ingest logic that fully controls how every record is handled. I typically use Google Cloud Projects to achieve this. CSV is simply a data source and Airtable is a target endpoint - neither of which is capable of providing the update intelligence needed to perform the updates seamlessly.