手間な入力作業、そろそろ卒業しまて完全自動化にしませんか?
会計ソフトのfreeeはとても便利ですが、freeeへ入力する作業自体に生産性はありません。
APIを活用することで、例えばスプレッドシートやフォームからfreeeを通した見積書や請求書作成、slackやスマホのGPS、同じくフォームからの勤怠登録など、勝手に情報が登録・更新されていくという道が開けます。
つまり、見積書や請求書の作成、勤怠データの更新作業など、煩雑なfreee入力作業がボタン一つで自動化される未来が実現します。
手作業でのミスや時間のロスを大幅に削減し、作業効率をアップしましょう。
make(integromat)を使ってfreeeとAPI連携、効率化を促進!
ノーコードiPaaSであるMake(Integromat)を使えば、プログラミング知識が少なくてもfreeeと連携し、入力作業を自動化できます。もちろん先程ふれた、スプレッドシートやフォーム、Slackとの連携も可能で、freeeにデータが自動で送信されるようになります。
そこで、今回はノーコードiPaaSのmake(integromat)を使用して、APIを触ってみます。
make(integromat)とは?APIでSaaS連携をシンプルに
make(integromat)はiPaaS(Integration Platform as a Service)の新しい次元です。ビジュアライズされたモジュールを活用し、SaaSを直感的にAPI連携できるプラットフォームです。月額1000円からご利用いただけ、IFTTTやZapierとは一線を画す高度な機能と使いやすいUIが特徴です。
ただし、高度な機能により、一部プログラミング知識が必要で、学習コストがやや高いかもしれません。NADJAではmake(integromat)学習のためのハンズオンプログラムを提供しており、JavascriptやGAS経験者は学習がスムーズです。無料プランも用意されていますので、ぜひお試しください。
NADJAはmake(integromat)の日本初の公式パートナーです。
※アフィリエイトリンクを含みますがテスト用に1か月分のプロプランを無料でご利用いただけます。
まずはFreee側でアプリを作成
残念ながら、make(integromat)は海外発のツールで、各国の会計基準が異なるため、freeeのモジュールなどは提供されておりません。そのため、モジュールが存在しない場合は(各パラメータを個別に設定する)カスタムHTTP callを使用して対応していただく必要があります。
開発環境作成
freeeが用意してくれる開発環境テスト事業所があるのでまずはそちらを利用しましょう。
まずは、アプリストアに行き、開発者ページのタブに進んでテスト環境を作成します。
https://app.secure.freee.co.jp/developers
出てきた画面で、特に何もおさず、「freee API利用を開始する」<のボタンを押します。
30秒程度待つとfreeeから、「開発用テスト事業所の作成完了のお知らせ」というメールが届くので、これで環境とテストアプリ出来上がりです。
そのまま即コマンドを試したい方は、届いたメールのアクセストークン取得ページに進んで、アクセストークンをコピーで拾ってAPIリファレンスで試すといいと思います。
Authをセットアップ
権限設定
公式案内では、アクセストークンの取得とAPIリファレンスの確認が必要です。ただし、APIリファレンスではコマンドの確認しかできません。そのため、開発者ページのタブに戻り、アプリの管理に移動してください。
現在、利用中の開発用テストアプリに進み、権限設定を行ってください。テスト環境のため、一旦すべての項目にチェックを入れ、自由に触れるようにしてみてください。
※下書き保存を忘れずに行ってください。後続のプロセスで401:Invalid access Tokenのエラーが発生する可能性があります。
ここでfreee APIのAuthのお約束解説
OAuth2.0の標準的な手続きでは、APIキーのような固定パスワードよりも、時間や回数に制限のあるトークンを用いてアクセスします。
APIドキュメントのAuthorization Code Flow部分に記載されている通り、
- 上記のメールから取得できるアクセストークンは有効期限が24時間です。
- Webアプリ認証用URLで取得する認可コードは有効期限が10分ほど。
- 24時間有効なアクセスコードの代わりに、期限のないが一度しか使えないリフレッシュトークンも利用できます。
実行環境セットアップ解説
お約束事が言っていることはつまり
アプリを永続的に動作させるためには、
- 認可コードでアクセストークンを取得する認証APIを一度実行します。
- アクセストークンと共にリフレッシュトークンが返されます。
- リフレッシュトークンを実行環境がアクセスできる場所に保管します。
この手順を初回に行い、以降は以下の流れで進める必要があります。
- 保管したリフレッシュトークンを取得。
- 認証APIをリフレッシュトークンを使用して実行。
- 新たに発行されたアクセストークンを利用してAPIコマンドを継続的に実行します。
具体的には
<
「Content-Type=application/x-www-form-urlencoded」で「https://accounts.secure.freee.co.jp/public_api/token」
をリクエスト先のURLにセットし、作成されたアプリ詳細の基本情報からClient IDとClient Secretをセット。Webアプリ認証用URLをブラウザで開き、認可コードを取得してcodeにセットします。
※ここではgrant_typeをauthorization_codeにすることに注目
こうするとリターンがこうなります。
それを受けて、シナリオをこのように作り変えます。
認証のAPIを叩く時はgrant_type=refresh_tokenに変更し、code=**の部分もrefresh_token={{前の認証リクエストで保管したR}}*にします。
その上で、ヘッダーにAuthorization= Bearer {{アクセストークン}}としてAPIを叩きます。
※(スペース)Bearer(スペース){{R}}としないといけない気がするけどホント!?
※適切な権限設定がないと401:invalid_access_token(ログインしてください)とエラーが返ってきます
※本番ではさすがにGoogleスプレッドシートは使わないでおきましょう
make(integromat)には便利なOAuth2.0用モジュールがあります
ここまで書いておいて何ですが、上記のようなことをしなくても、make(integromat)にはGASのPropertiesServiceOAuth2 for Apps Script+PropertiesServiceの組み合わせを一つにしたような、Pythonのoauthlibのような、Refresh Tokenを内部で保持してくれるモジュールがあります。
freeeアプリの設定側でコールバックURLを「https://www.integromat.com/oauth/cb/oauth2」に設定します。
※詳細はこちらhttps://www.integromat.com/en/help/app/http
このモジュールのConnection作成時に以下の用に設定すれば、一発でOAuth2.0への道が開けます。ヘッダーにも何も設定しないでOK!
※Client ID とSecretは前述の方法と同様にセットしてください。
実際にMakeでAPI連携を試してみませんか?
make(integromat)は新しいiPaaS(Integration Platform as a Service)の次元で、手頃な月額料金からスタートできる、業務効率化やノーコードのツールです。
今回はFreeeをAPIを使ってmake(integromat)に連携させ、自動化のセットアップ方法をご紹介いたしました。
MakeとfreeeのAPI連携を使えば、データの登録・更新作業が一気に効率化できます。見積書や請求書の作成から勤怠登録まで、業務効率を高めるチャンスです。
モジュールがない場合でも、各パラメータを個別に設定するカスタムHTTP callで柔軟に対応可能です。また、Freeeを通した見積書や請求書作成がmake(integromat)を使用することで簡単になります。
無料プランで始めて効率化を体験!
NADJAは日本初のmake(integromat)公式パートナーであり、データ連携の導入支援も提供しています。学習には一部プログラミング知識が必要で、学習コストはやや高めかもしれませんが、NADJAではmake(integromat)学習のためのハンズオンプログラムを提供しており、JavascriptやGAS経験者はスムーズに学べます。無料プランも用意されていますので、ぜひお試しください。ご相談はお気軽にお問い合わせください。
また、下記の記事ではmake(integromat)とほかのアプリとの組み合わせでの自動化を実現した活用事例を紹介しています。是非参考にしてください。