freeeで管理している取引データをGoogleスプレッドシートに自動で取り込みたいとお考えではありませんか。手作業でCSVをエクスポートしてインポートするのは手間がかかります。freee APIを利用すれば、APIキーを発行してApps Scriptで連携することで、取引データをスプレッドシートに自動反映できます。この記事では、freeeのAPIキーを取得し、Googleスプレッドシートにデータを取り込む手順を詳しく解説します。
【要点】freeeの取引データをGoogleスプレッドシートに自動取込する方法
- freeeでAPIキーを発行する: 連携のための認証情報を取得します。設定画面から発行し、安全に保管します。
- Apps Scriptでカスタム関数を作成する: freee APIからデータを取得し、スプレッドシートに出力するスクリプトを記述します。
- 定期実行トリガーを設定する: スクリプトを定期的に実行し、データを自動更新します。時間主導型トリガーで間隔を指定します。
ADVERTISEMENT
目次
freee API連携の概要と必要な準備
freee APIとは、freeeが提供するWeb APIで、取引データや勘定科目などをプログラムから取得できる仕組みです。APIキーを使うことで、Google Apps Scriptからfreeeのデータにアクセスできます。この連携には、freeeのアカウント(有料プランが必要な場合あり)と、Googleアカウントがあれば十分です。また、APIキー発行のための権限や、Apps Scriptの基本知識も必要です。以下で具体的な手順を説明します。
freee APIキーを取得してスプレッドシートにデータを取り込む手順
1. freeeでAPIキーを発行する
- freeeにログインし、API設定画面を開く
freeeの管理画面にログインし、[設定]→[API設定]を開きます。 - APIキーを発行する
[APIキーを発行]ボタンをクリックし、表示されたキーをメモします。このキーは一度しか表示されないため、安全な場所に保存してください。 - 許可するスコープを設定する
必要に応じて、APIのアクセス範囲(例:会計データの読み取り)を選択します。
2. GoogleスプレッドシートでApps Scriptを作成する
- スプレッドシートを開き、拡張機能からApps Scriptを起動する
新しいスプレッドシートを作成し、[拡張機能]→[Apps Script]を選択します。 - スクリプトを記述する
コードエディタに、freee APIからデータを取得する関数を記述します。以下はサンプルコードです。 - APIキーをスクリプトに設定する(安全に管理する)
上記コードの「YOUR_API_KEY」の部分を発行したAPIキーに置き換えます。ただし、直接コードに書き込むとセキュリティリスクがあるため、スクリプトプロパティに保存することを推奨します。 - 関数を実行してデータを取得する
スクリプトエディタで関数「getFreeeDeals」を実行し、スプレッドシートにデータが出力されることを確認します。
function getFreeeDeals() {
var apiKey = 'YOUR_API_KEY';
var url = 'https://api.freee.co.jp/api/1/deals';
var headers = { 'Authorization': 'Bearer ' + apiKey };
var options = { 'method': 'get', 'headers': headers, 'muteHttpExceptions': true };
var response = UrlFetchApp.fetch(url, options);
var data = JSON.parse(response.getContentText());
// スプレッドシートに出力
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var rows = [];
data.deals.forEach(function(deal) {
rows.push([deal.id, deal.amount, deal.date, deal.status]);
});
sheet.getRange(1,1, rows.length, rows[0].length).setValues(rows);
}
3. トリガーを設定して定期実行する
- Apps Scriptのトリガー画面を開く
スクリプトエディタの左メニューから[トリガー](時計アイコン)を選択します。 - 新しいトリガーを作成する
[トリガーを追加]をクリックし、実行する関数「getFreeeDeals」、イベントの種類「時間主導型」、時間間隔(例:「1時間おき」)を設定します。 - 保存して承認する
トリガーを保存する際に、スプレッドシートや外部サービスへのアクセス許可を求められるので、承認します。
API連携で注意すべきポイントとよくあるトラブル
APIキーの管理に注意する
APIキーは第三者に漏れると、不正にデータを取得される恐れがあります。スクリプトに直接記述せず、スクリプトプロパティや環境変数で管理しましょう。また、定期的にキーを更新することをおすすめします。
レート制限に引っかかる
freee APIには呼び出し回数の制限があります。短時間に大量のリクエストを送ると、一時的にアクセスが制限されることがあります。トリガーの間隔を適切に設定し、必要以上に頻繁な実行を避けましょう。
認証エラーが発生する
APIキーが無効、またはスコープが不足している場合、認証エラーが返されます。キーの有効期限や権限を確認し、必要なら再発行してください。
スクリプトの実行時間制限を超える
Apps Scriptの1回の実行時間は最大6分です。大量のデータを取得する場合は、分割処理を検討するか、ページネーションに対応したコードを書く必要があります。
ADVERTISEMENT
freee APIキー連携とCSV手動取込の比較
| 項目 | freee APIキー連携 | CSV手動取込 |
|---|---|---|
| データ更新の自動化 | 自動(定期的に更新可能) | 手動(毎回CSVをダウンロードしてインポート) |
| 手間 | 一度設定すれば以後自動 | 毎回の手作業が必要 |
| リアルタイム性 | トリガー設定によりほぼリアルタイム | 手動更新の頻度に依存 |
| セキュリティ | APIキーの管理が必要 | CSVファイルの取り扱いに注意 |
まとめ
freee APIキーを利用した連携により、Googleスプレッドシートに取引データを自動で取り込めるようになります。この記事で解説した手順を参考に、スクリプトを作成し、トリガーを設定してください。データの追加やフィルタリングなど、スクリプトをカスタマイズすることで、より柔軟なデータ活用が可能です。まずは小さなデータセットで動作を確認し、本番運用に移行しましょう。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Googleスプレッドシートの人気記事ランキング
- 【Googleスプレッドシート】GOOGLEFINANCE関数で株価・為替を取得!リアルタイムデータの呼び出し
- 【Googleスプレッドシート】印刷範囲を指定して印刷!特定範囲だけPDFや紙に出す手順
- 【Googleスプレッドシート】新しいスプレッドシートを作成する3つの方法!ドライブ・URL・テンプレート
- 【Googleスプレッドシート】数値の連続データを自動入力!オートフィルの活用
- 【Googleスプレッドシート】ダークモードを有効にする!目に優しい配色への切替
- 【Googleスプレッドシート】株価APIで株式データを自動取得!GOOGLEFINANCE超え活用
- 【Googleスプレッドシート】共有相手が編集できない時のチェック!権限と許可状態の確認
- 【Googleスプレッドシート】ページ設定で用紙サイズと向きを調整!印刷レイアウトの基本
- 【Googleスプレッドシート】Excelファイルxlsxをインポートする手順!ドラッグ&ドロップで取り込み
- 【Googleスプレッドシート】条件付き書式をコピーする!書式のみペーストの活用
