前書き
AirtableのテーブルデータをJSONでダウンロードしたのち、適切に加工して自作アプリに組み込みたかった。
どうせなら勉強を兼ねて自作してみた。
前準備
APIを叩くには、アカウント自身のPersonal Access Tokenと baseidが必要です。下記からコピーしてください。
- Personal Access Tokenを作成
GUIDE Personal access tokensをよく読んで操作したいbaseに対応するアクセストークンを作成する。Scopesはこのライブラリを使うだけならdata.records:readだけでよい。作成時にしかトークンをコピーできないので気を付けよう。 - baseIDをコピー
API Referenceから操作したいbaseを選んでIDをコピーする。以下の画像の赤枠の部分から遷移して黒塗りの所にbaseIDがあるのでコピーしてください。最後の色違いピリオドは無関係なので気を付けよう。
使い方
readonly string appKey = YOUR_PERSONAL_ACCESS_TOKEN;
readonly string baseId = TARGET_BASE_ID;
string table = TARGET_TABLE;
string view = TARGET_VIEW; //Optional
string path = TARGET_FILE_FULLPATH;
//Init HttpClientFactory
var services = new ServiceCollection();
services.AddHttpClient<IAirtableServices, AirtableServices>()
.SetHandlerLifetime(TimeSpan.FromMinutes(5));
var provider = services.BuildServiceProvider();
var api_service = provider.GetRequiredService<IAirtableServices>();
//指定のテーブルの特定のビューのJSONテキストをファイルに書き込み
var result1 = await api_service.DownloadTableToFile(path,appKey,baseId,table,view);
//指定のテーブルの特定のビューのJSONテキストを取得
var result2 = await api_service.DownloadTableJson(appKey,baseId,table,view);
//指定のテーブルの特定のビューをDataClassにマッピング
var result3 = await api_service.LoadTable<DataClass>(appKey,baseId,table,view);
ソースコード
Nuget