Skip to main content

I just got metadata api and I’m trying to connect it with my airtable and get data but it is not connecting and keeps throwing me errors.



HelloWorld = () => {

axios

.get(

"https://api.airtable.com/v0/mykey" + "/" + 'Table 1',

{ headers: { Authorization: "Bearer " + 'api-key-from-airtable' } },

)

.then(resp => console.log(resp))

.catch(error => console.log(error))

}



This throws the error of Error: Request failed with status code 404 and 404 not found.



I tried performing a GET request on postman as well but it still did not work.



myKey is the problem.




myKey is the problem.


At myKey I add airtable metadata key I got, what’s wrong with it?


At myKey I add airtable metadata key I got, what’s wrong with it?




Your code suggests the URL you are making the request to is this - and this will almost certainly cause a 404 error.



https://api.airtable.com/v0/mykey/Table 1



Even if we assume “myKey” is something other than what you have shown, “Table 1” is not URL encoded, yet again, almost certainly why you would see a 404 result code.




Your code suggests the URL you are making the request to is this - and this will almost certainly cause a 404 error.



https://api.airtable.com/v0/mykey/Table 1



Even if we assume “myKey” is something other than what you have shown, “Table 1” is not URL encoded, yet again, almost certainly why you would see a 404 result code.




How do I call it then?




How do I call it then?




The table name must be URI Encoded like this.



"https://api.airtable.com/v0/mykey" + "/" + encodeURI('Table 1')


1) 

https://api.airtable.com/v0/<myApiKey>/Table 1

does not work for me too, what is working:
a) request
https://api.airtable.com/v0/meta/bases/INSERT_BASE_ID_HERE/tables

b) in returned JSON find a table by name in tables array.

More: https://airtable.com/api/meta

2) apiKey is not suitable for Metadata calls, what is required - Personal access token, make one here: https://airtable.com/create/tokens


Reply