GASでマネーフォワード請求書の請求書一覧を取得するスクリプト


billing

photo credit: Cerillion Calculator – Billing via photopin (license)

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

GASによるマネーフォワードクラウド請求書APIの操作についてできる限りていねいに紹介をするシリーズをお送りしています。

前回の記事はこちら。

マネーフォワードクラウド請求書APIによる請求書一覧のデータを読み取ってみよう!
GASによるマネーフォワードクラウド請求書APIの操作についてできる限りていねいに紹介をするシリーズです。今回は、マネーフォワードクラウド請求書APIによる請求書一覧のデータを読み取っていきます。

マネーフォワードクラウド請求書APIの請求書一覧のJSONデータを読み取ってみました。

今回は、いよいよGASから請求書一覧の取得をしていきますよ。

ということで、GASでマネーフォワード請求書の請求書一覧を取得するスクリプトについてお伝えしていきます。

では、行ってみましょう!

スポンサーリンク

GASで請求書一覧を取得するための準備

まず、本記事ではシリーズで使ってきたGASのプロジェクトを使います。

つまり、以下の手順でいうと、GASでマネーフォワードクラウド請求書APIの操作を行うための、1のアプリケーションの作成と、2の認証およびアクセストークンの取得が終わっているということです。

  1. マネーフォワードクラウド請求書API用のアプリケーションの作成
  2. 認証とアクセストークンの発行
  3. マネーフォワードクラウド請求書APIにリクエスト

それで、今回は3として、請求書一覧の取得のリクエストをしていくということです。

1,2の準備が完了していない方は、以下の記事あたりから何記事かをご覧いただいて完了させましょう。

GAS用のマネーフォワードクラウド請求書APIアプリケーションを作成する手順
マネーフォワードクラウド請求書APIの使い方についてできる限りていねいに紹介をするシリーズをお送りしています。今回は、GAS用のマネーフォワードクラウド請求書APIアプリケーションを作成する手順をお伝えします。

マネーフォワードクラウドの請求書一覧データを取得するスクリプト

GASを使ってマネーフォワードクラウド請求書APIから請求書一覧データを取得するスクリプトはこちらです。

function getBillings() {

  const accessToken = getMFInvoiceService_().getAccessToken();

  const baseUrl = 'https://invoice.moneyforward.com/api/v2/billings';
  const params = {
    method: 'get',
    headers: {
      accept: 'application/json',
      Authorization: 'Bearer ' + accessToken
    }
  };
  
  const requestUrl = baseUrl;
  const response = UrlFetchApp.fetch(requestUrl, params); 
  console.log(response.getContentText());
}  

では、順を追って解説していきましょう。

請求書一覧を取得するリクエスト

まず、GASでAPIへアクセスをするときには、以下のUrlFetchAppのfetchメソッドを使うんでしたね。

UrlFetchApp.fetch(リクエストURL, パラメーター)

こちらの記事でテストした通りですが、URLはこちらです。

https://invoice.moneyforward.com/api/v2/billings?page=1&per_page=100&excise_type=boolean

URLに付与されているパラメーターは省略可能ですので今回は省略しています(が、pageだけは後で指定することになります)。

そして、第2引数のほうに渡す各パラメーターは以下のとおりでした。

  • method: get
  • headers
    • accept: application/json
    • Authorization: Beare 8318*************”

アクセストークンは、OAuth2ライブラリで認証したときにゲットしていたのを、以下のgetAccessTokenメソッドで取り出せます。

OAuth2Serviceオブジェクト.getAccessToken()

つまり、3行目で取り出したものを、10行目で使用しています。

請求書一覧を含むレスポンス

リクエストに対して、請求書一覧のデータを含むレスポンスが返ってきます。

レスポンスであるResponseオブジェクトから、そのテキストデータを取り出すのが以下のgetContentTextメソッドでしたね。

Responseオブジェクト.getContentText()

請求書一覧データを取得した結果

では、請求書一覧データを取得した結果を見てみましょう。

実行すると、以下のようなログを確認できます。

モザイクばかりですが、ちゃんと請求書一覧データでした。信じてください。

GASで取得した請求書一覧データ

ログが切り捨てられちゃってているのでわかりづらいのですが、前回お伝えしたとおり、全件ではなくて100件しか取得してきません。

なので、全件を取得するためには、少し工夫が必要になります。

まとめ

以上、GASでマネーフォワード請求書の請求書一覧を取得するスクリプトについてお伝えしました。

リクエストのつくり方さえわかってしまえば、他の操作も比較的簡単にリクエストできるようになると思います。

次回ですが、取得したデータをスプレッドシートに書き出すようにしていきたいと思います。

どうぞお楽しみに!

連載目次:【初心者向け】GASでマネーフォワード請求書API

マネーフォワード請求書APIを使用することで、GASからマネーフォワード請求書のデータを取得したり、操作をしたりすることが可能です。このシリーズでは、そのはじめの一歩として、マネーフォワード請求書APIとは何か?またGASによるアクセスの初歩をお伝えしていきます!
  1. はじめてのマネーフォワード請求書API~その概要とおおまかな手順
  2. マネーフォワード請求書APIへのアクセスをテストしてみよう!
  3. GAS用のマネーフォワード請求書APIアプリケーションを作成する手順
  4. GASでAPIを操作をする強い味方「OAuth2 for Apps Script」ライブラリとその導入
  5. GASでマネーフォワードクラウド請求書APIへの認証とアクセストークンの取得を行う方法
  6. OAuth2 for Apps Scriptライブラリを使ってサービスを作るスクリプトを解説
  7. OAuth2 for Apps Scriptライブラリはどうやって認証用URLを作成しているのか
  8. OAuth2 for Apps Scriptライブラリはどうやってアクセストークンを取得するのか
  9. GASではじめてのマネーフォワードクラウド請求書APIへリクエスト
  10. マネーフォワードクラウド請求書APIから請求書一覧の取得をテストしてみよう!
  11. マネーフォワードクラウド請求書APIによる請求書一覧のデータを読み取ってみよう!
  12. GASでマネーフォワード請求書の請求書一覧を取得するスクリプト
  13. GASでマネーフォワードクラウド請求書の請求書一覧をスプレッドシートに書き出す方法
  14. マネーフォワードクラウド請求書の請求書一覧の全件をスプレッドシートに書き出すスクリプト

タイトルとURLをコピーしました