会計freeeのAPIをTypeScriptで使うためのラッパーです。
freee/freee-api-schemaにある、/open-api-3/api-schema.jsonのデータに基づき、openapi-generatorを使って、アクセス用関数を自動生成しています。
- Windows10 1903
- Node v12.13.0
- Git BASH 4.4.23
find xargs patchなどを使っているので、DOSプロンプトやPower Shellでは動かない可能性が高いです。
あらかじめ、下記をインストールしておいてください。
git BASHで下記のコマンドを実行してください。
任意のディレクトリに移動後、
git clone https://github.com/m-haketa/freeeapi-typescript-helper.git
cd freeeapi-typescript-helper
npm install
npm run apibuild
client_id
および client_secret
を取得するため、freeeアプリストアの開発者ページでアプリケーションを登録します。
このとき、必ず、コールバックURLを、http://127.0.0.1:8080/
に設定してください。
参考URL↓
下記ページの「1.」で表示されているClient ID、Client Secretを「src/token/clientdata.json」に入力してください。
{
"client_id": "ここにCLIENT_IDを入れる",
"client_secret": "ここにCLIENT_SECRETを入れる"
}
参考URL↓
認可コードを取得します。
下記ページの「認可コードを取得する」を参考に、Webアプリ認証用URLをブラウザで開いてください
npm run gettoken
を実行してください。
実行すると、下記のように表示されます。
Webアプリ認証用URLをブラウザで開いて、認証を開始してください。
Ctrl+Cを押すと、コールバックの受け待ちを終了します。
Webアプリ認証用URL:
https://accounts.secure.freee.co.jp/public_api/token/?XXXXX
このメッセージが表示されたら、最後に表示されたURLを開いてください。
すると、自動でトークンが取得され、トークンの情報は「src/token/tokendata.json」に保存されます。
すでに取得済みのトークンがある場合には、上記1~4の手順の代わりに、次のようにしてトークンの情報を保存してください。
- src/token/tokendata_example.json ファイルを、src/token/tokendata.json にコピー
- tokendata.json に取得済みのトークンを入力する
{
"access_token":"XXX",
"token_type":"bearer",
"expires_in":86400,
"refresh_token":"XXX",
"scope":"XXX",
"created_at":0
}
↓
{
"access_token":"abc12345abc12345abc12345abc12345abc12345abc12345abc12345abc12345",
"token_type":"bearer",
"expires_in":86400,
"refresh_token":"12345abc12345abc12345abc12345abc12345abc12345abc12345abc12345abc",
"scope":"XXX",
"created_at":0
}
最低限、access_tokenだけ入力できていれば、デモは動きます。
npm run demo
で、デモを実行することができます。
- 1件目の会社コード
- その会社コードの貸借対照表
が出力されます。
デモのソースコードは、src/index.ts
に入っています。
- Partners APIの設定に不具合があり、ファイルが正しく生成されません。エラーが出るおそれがあるためパッチを当てています。その影響で、引数または返り値の自動補完が効きません。さらに、正常に情報を取得できない可能性もあります。
- Company(get) APIの設定に不具合があり、自動生成されたプログラムだと、返り値の一部を自動的にカットしてしまい、データが読み込めないためパッチを当てています。その影響で、返り値の自動補完が完全には効きません。
その他のAPIについても、動作テストは、ほとんどしていませんので、安定していない可能性があります。