前回は中小企業庁が提供する「官公需情報ポータルサイト」が提供するAPI「官公需情報ポータルサイト検索API(以下、官公需APIとします)」について解説しました。 今回はこのAPIに対してMakeからアクセスしてみます。
このAPIについて、前回わかったことをまとめます。
https://www.kkj.go.jp/api/
POST
上の情報を参照しながら、いよいよMakeによるAPI連携アプリの作成です。Makeにログインして、右上の「Create a new scenario」をクリックするとスタートです! 最初はこの画面になります。この画面にブロックを配置し、連結していくことでアプリを作っていくことになります。 画面中央の「+」をクリックするとブロックの一覧が出てきます。虫眼鏡マークのところに「http」と入力すると、地球儀のアイコンが出てきますのでそれをクリックします。 地球儀をクリックすると、さらに地球儀がたくさん並びます。それぞれ、違う機能を提供していますが、今回は「Make a request」を選びます。APIにリクエストする機能を持つものです。 この「HTTP-Make a request」というのが、APIにアクセスできるブロックです。ここに、APIのデータを入力していきます。先程のAPIの情報をおさらいしておきます。
https://www.kkj.go.jp/api/
POST
まずはURLの部分に
と、さらにMethodの部分に
パラメータ送信方式 POST
を選んでおきます。 Headersには、「Add a header」をクリックし、Item 1のNameに content-type 、Valueに application/xml を入力します。これはおまじないのようなものなので、そのまま入力しておきましょう。 あとはパラメータですが、今回は北海道の除雪を想定してみましょう。
パラメータ:
これを入力していきます。「Query String」に入力します。「Add parameter」を押して、「Name」にコロン(:)の左部分、「Value」にコロンの右部分を入れていきます。 これで、APIにアクセスする準備はできました。一番下の「OK」を押して… CONTROLSのファイルボタンをクリックして、いったん保存したあと、「Run once」を押します。そうすると、今あるブロックが実行されます。 設定が誤ってなければ、HTTPのアイコンの上に吹き出しが現れ、「1」と表示されます。
この「1」をクリックすると、APIにアクセスした結果が見られます。INPUTがAPIに送ったデータ、OUTPUTがAPIから戻ってきたデータです。 INPUTのQueryに設定したデータが入っています。 OUTPUTについては、Status codeが「200」となっていると、成功していると思います。「404」など、他の数字になっている場合は、データは送信できているけど、外部サービスの処理に失敗しているを示しますので、設定したパラメータに余計な半角スペースが入っていたり、全角で入力していたりしていないか確認して、再度実行します。
実際の検索結果はOUTPUTのDataに入っています。 なんだかよくわかりませんが、それっぽいデータが入っていることがわかります。これをわかりやすくするには、HTTPブロックの設定の「Parse response」を Yes にします。これは、このDataを整形して、人間でもわかりやすくするオプションです。 これを設定したら、再度「Run once」して、結果を見てみます。Dataの下のSearchResultが10個あることがわかります。 さらに数字の左の「+」を押すと、それぞれの検索結果の詳細がわかります。
よく見ると ProjectName だったり、 ProjectDescription だったりと、それぞれの支援制度の詳細が入っていることがわかります。
今回は、APIからデータを取得するところまでを確認しました。次回はこの内容をGoogle Spreadsheetに書き込んでいきます。
これにてご免!