Airtable/airtable.js

find, update and create methods doesn't support returnFieldsByFieldId API parameter

lcarbonn opened this issue · 4 comments

The web API presents query parameters like returnFieldsByFieldId .
But the airtable.js methods find, update, create don't allow to pass this parameters.
Only select method can use it.
Am I wrong ?

+1
it makes the API very fragile that we have to use the names vs IDs

could this be exposed to additional table methods?

+1

I would expect something like
.find(recordId, { returnFieldsByFieldId: true })

Where params are from https://airtable.com/developers/web/api/get-record .

For those that will find this issue, you can get around this by using makeRequest method from base like this:

const makeRequest = Airtable.base('baseId').makeRequest
const response = await makeRequest({
  method: 'get',
  path: `/${tableId}/${recordId}`,
  qs: {
    returnFieldsByFieldId: true,
  },
 })
console.log(response)

This method has rate limiting logic to retry, and contains configured authentication.

+1