Oct 08, 2016 07:41 PM
Is there any plan for an API to pull metadata? It’s currently very difficult to infer the schema, you have to resort to hacks like reading all records and then trying to infer types and column names from that. It’d be great if you could pull the schema information for a table more easily!
It’d also be awesome if you’d be able to add and change tables from the API, but that’s less pressing to me :slightly_smiling_face:
Oct 08, 2016 11:54 PM
+1. Apparently they’re working on it… :slightly_smiling_face:
Note that the Standard API does not provide the ability to create or modify base schemas. For this type of behavior, you will need to use the Airtable Metadata API, which has not yet been released.
Mar 30, 2017 08:49 AM
Anyone have any idea whether the Metadata API is getting close… ?
Mar 30, 2017 10:44 AM
As of last week: months…
Mar 30, 2017 11:18 AM
:disappointed:
Oh well. Guess I’ll stick with hard-coding for now… thx.
Apr 02, 2017 01:36 PM
I found a half-way solution that will help in some use-cases while waiting for the metadata API.
Visit https://airtable.com/api and select a base. Then open your browsers console (Developer Tools) and run the following (I tried simply running JSON.stringify(window.application), however there are circular references so I had to manually reconstruct the properties I wanted).
var myapp = {
id:window.application.id,
name:window.application.name,
tables:[]
};
for (let table of window.application.tables){
var mytable = {
id:table.id,
isEmpty:table.isEmpty,
name:table.name,
nameForUrl:table.nameForUrl,
primaryColumnName:table.primaryColumnName,
columns:[]
};
for (let column of table.columns){
var mycolumn = {
id:column.id,
name:column.name,
type:column.type,
typeOptions:column.typeOptions
};
mytable.columns.push(mycolumn);
}
myapp.tables.push(mytable);
}
jQuery('link[rel=stylesheet]').remove();
jQuery("body").html(JSON.stringify(myapp));
console.log(myapp);
May 10, 2017 03:00 PM
+1, getting the schema would be really great! Modifying the schema is far less important for our use-cases.
Mar 08, 2018 03:11 PM
Any news on this guys? Or are you keeping it exclusive to Zapier et al?
Mar 12, 2018 07:05 PM
Similar to the @Chester_McLaughlin solution above I created a node script that launches a browser environment and downloads the schema to a json file. https://github.com/cape-io/airtable-schema
Mar 16, 2018 01:01 AM
Unfortunately that’s not good enough for me.