API
HTTP GET
概要
このブロックは、指定されたURL(HTTPサーバー)へ、HTTPのGETメソッドを使って要求(リクエスト)を送り、応答(レスポンス)としてリソース(データ)を取得します。
リクエストには、任意のクエリーパラメーターやリクエストヘッダーを含められます。
レスポンスは、変数に格納できます。
本ブロックを使うことで、HTTP GETメソッドのWeb APIとの連携が可能です。
レスポンスの"HTTP Status"が400番台、500番台の時は、ブロックの実行が失敗します。
プロパティ
プロパティ名 | 説明 |
---|---|
ブロック名 |
編集パネルに配置した当該ブロックの表示名が変更できます。 ブロックリストパネル中のブロック名は変更されません。 |
URL | リクエストするURLを指定します。 |
クエリーパラメーター |
クエリーパラメーターを指定します。キーとバリューの組み合わせで指定します。 以下は、設定例です。 |
ブロックメモ | このブロックに関するメモが記載できます。このブロックの処理に影響しません。 |
エラー時の繰り返し回数 | リクエストエラー時の繰り返し回数を指定します。 |
繰り返し間隔 | リクエストエラー時の繰り返し間隔を秒単位で指定します。 |
レスポンスを格納する変数 |
HTTPサーバーが返すレスポンスを格納する変数を指定します。 変数に格納する値は、レスポンスのメッセージ・ボティのみです。レスポンスの「Content-Type」ヘッダーが「application/json」の場合は、メッセージ・ボディをデコードした結果を変数に格納します。 詳細については、「出力仕様>HTTP GET/HTTP POST/HTTP PUT」を参照してください。 |
リクエストヘッダー |
リクエストヘッダーを指定します。キーとバリューの組み合わせで指定します。 「Bearerトークン認証」や「Basci認証」などのように、Web APIによっては追加のリクエストヘッダーが必要な場合があります。このプロパティは、そのような場合に使用します。 以下は、「Bearerトークン認証」を指定した例です。 |
使用例
ここでは、Google Books APIsを使って書籍の検索を行う例を紹介します。
Google Books APIsは、Googleが提供する、書籍情報を取得するためのAPIです。このAPIを使うことで、書籍の検索や詳細情報の取得が簡単に行えます。
Google Books APIsへのリクエストは、HTTP GETメソッドを使います。以下は、BigQueryをタイトルに含む日本語の書籍を検索するためのリクエストURLの例です。
https://www.googleapis.com/books/v1/volumes?q=intitle:BigQuery&langRestrict=ja
このURLでは、以下のクエリーパラメーターを指定しています。
クエリーパラメーター | 説明 |
---|---|
q |
検索する単語を指定します。この例では、「 |
langRestrict |
言語を指定します。この例では、 |
これを「HTTP GET」ブロックで実現すると以下のようになります。
設定するプロパティと指定値は以下のとおりです。
プロパティ | 指定値 |
---|---|
URL |
|
クエリーパラメーター |
キーに |
レスポンスを格納する変数 |
|
Google Books APIsからのレスポンスは、JSON形式で返されます。以下は、レスポンスの例です。
例:
{ "kind": "books#volumes", "totalItems": 3, "items": [ { "kind": "books#volume", "id": "F0CbBwAAQBAJ", "etag": "HZAaVgaUyWY", "selfLink": "https://www.googleapis.com/books/v1/volumes/F0CbBwAAQBAJ", "volumeInfo": { "title": "Google BigQueryではじめる自前ビッグデータ処理入門", "authors": [ "清野克行" ], "publisher": "秀和システム", "publishedDate": "2014-09", "description": "ビッグデータの蓄積や分析には、外部ベンダーに依頼したり、本格的なプログラム開発が必要...?ではありません!本書では、WebブラウザやExcelを使って、誰でもビッグデータを蓄積したり、分析したりする方法を紹介します。もちろん、プログラム開発でより本格的な一歩を踏み出すための方法も紹介。", "industryIdentifiers": [ { "type": "ISBN_13", "identifier": "9784798041872" }, { "type": "ISBN_10", "identifier": "4798041874" } ], "readingModes": { "text": false, "image": true }, "pageCount": 229, "printType": "BOOK", "maturityRating": "NOT_MATURE", "allowAnonLogging": false, "contentVersion": "preview-1.0.0", "panelizationSummary": { "containsEpubBubbles": false, "containsImageBubbles": false }, "imageLinks": { "smallThumbnail": "http://books.google.com/books/content?id=F0CbBwAAQBAJ&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api", "thumbnail": "http://books.google.com/books/content?id=F0CbBwAAQBAJ&printsec=frontcover&img=1&zoom=1&edge=curl&source=gbs_api" }, "language": "ja", "previewLink": "http://books.google.com.tw/books?id=F0CbBwAAQBAJ&printsec=frontcover&dq=intitle:BigQuery&hl=&cd=1&source=gbs_api", "infoLink": "http://books.google.com.tw/books?id=F0CbBwAAQBAJ&dq=intitle:BigQuery&hl=&source=gbs_api", "canonicalVolumeLink": "https://books.google.com/books/about/Google_BigQuery%E3%81%A7%E3%81%AF%E3%81%98%E3%82%81%E3%82%8B%E8%87%AA%E5%89%8D%EF%BE%8B.html?hl=&id=F0CbBwAAQBAJ" }, "saleInfo": { "country": "TW", "saleability": "NOT_FOR_SALE", "isEbook": false }, "accessInfo": { "country": "TW", "viewability": "PARTIAL", "embeddable": true, "publicDomain": false, "textToSpeechPermission": "ALLOWED", "epub": { "isAvailable": false }, "pdf": { "isAvailable": true, "acsTokenLink": "http://books.google.com.tw/books/download/Google_BigQuery%E3%81%A7%E3%81%AF%E3%81%98%E3%82%81%E3%82%8B%E8%87%AA%E5%89%8D%EF%BE%8B-sample-pdf.acsm?id=F0CbBwAAQBAJ&format=pdf&output=acs4_fulfillment_token&dl_type=sample&source=gbs_api" }, "webReaderLink": "http://play.google.com/books/reader?id=F0CbBwAAQBAJ&hl=&source=gbs_api", "accessViewStatus": "SAMPLE", "quoteSharingAllowed": false }, "searchInfo": { "textSnippet": "ビッグデータの蓄積や分析には、外部ベンダーに依頼したり、本格的なプログラム開発が必要...?ではありません ..." } }, { "kind": "books#volume", "id": "SXzlDwAAQBAJ", "etag": "/GTB/99umYI", "selfLink": "https://www.googleapis.com/books/v1/volumes/SXzlDwAAQBAJ", "volumeInfo": { "title": "GoogleCloudPlatform実践ビッグデータ分析基盤開発ストーリーで学ぶGoogleBigQuery", "authors": [ "トップゲート" ], "publisher": "秀和システム", "publishedDate": "2019-12", "description": "Googleが社内データ分析基盤を一般提供したサービス、GigQuery(ビッグクエリ)の基礎から応用までを学びます。", "industryIdentifiers": [ { "type": "ISBN_13", "identifier": "9784798059563" }, { "type": "ISBN_10", "identifier": "4798059560" } ], "readingModes": { "text": false, "image": true }, "pageCount": 241, "printType": "BOOK", "maturityRating": "NOT_MATURE", "allowAnonLogging": false, "contentVersion": "preview-1.0.0", "panelizationSummary": { "containsEpubBubbles": false, "containsImageBubbles": false }, "imageLinks": { "smallThumbnail": "http://books.google.com/books/content?id=SXzlDwAAQBAJ&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api", "thumbnail": "http://books.google.com/books/content?id=SXzlDwAAQBAJ&printsec=frontcover&img=1&zoom=1&edge=curl&source=gbs_api" }, "language": "ja", "previewLink": "http://books.google.com.tw/books?id=SXzlDwAAQBAJ&printsec=frontcover&dq=intitle:BigQuery&hl=&cd=2&source=gbs_api", "infoLink": "http://books.google.com.tw/books?id=SXzlDwAAQBAJ&dq=intitle:BigQuery&hl=&source=gbs_api", "canonicalVolumeLink": "https://books.google.com/books/about/GoogleCloudPlatform%E5%AE%9F%E8%B7%B5%EF%BE%8B%EF%BE%9E%EF%BD%AF%EF%BD%B8%EF%BE%9E.html?hl=&id=SXzlDwAAQBAJ" }, "saleInfo": { "country": "TW", "saleability": "NOT_FOR_SALE", "isEbook": false }, "accessInfo": { "country": "TW", "viewability": "PARTIAL", "embeddable": true, "publicDomain": false, "textToSpeechPermission": "ALLOWED", "epub": { "isAvailable": false }, "pdf": { "isAvailable": true, "acsTokenLink": "http://books.google.com.tw/books/download/GoogleCloudPlatform%E5%AE%9F%E8%B7%B5%EF%BE%8B%EF%BE%9E%EF%BD%AF%EF%BD%B8%EF%BE%9E-sample-pdf.acsm?id=SXzlDwAAQBAJ&format=pdf&output=acs4_fulfillment_token&dl_type=sample&source=gbs_api" }, "webReaderLink": "http://play.google.com/books/reader?id=SXzlDwAAQBAJ&hl=&source=gbs_api", "accessViewStatus": "SAMPLE", "quoteSharingAllowed": false }, "searchInfo": { "textSnippet": "Googleが社内データ分析基盤を一般提供したサービス、GigQuery(ビッグクエリ)の基礎から応用までを学びます。" } }, { "kind": "books#volume", "id": "nMofEAAAQBAJ", "etag": "BcIiSW9CqSY", "selfLink": "https://www.googleapis.com/books/v1/volumes/nMofEAAAQBAJ", "volumeInfo": { "title": "集中演習 SQL入門 Google BigQueryではじめるビジネスデータ分析", "authors": [ "木田和廣" ], "publisher": "インプレス", "publishedDate": "2021-02-19", "description": "データ分析のためのSQLが最速で身につく! 昨今では、ノンエンジニアのビジネスパーソンでも、CRMの顧客情報、EC・実店舗の注文ログ、Webサイトの行動ログなどの大量のデータを入手し、分析する機会が増えました。その結果、Excelだけでは集計・分析が困難になるケースも生まれています。 本書は、データの抽出・整形に用いられる言語「SQL」について、プログラミング未経験でも取り組める入門書です。Googleアカウントがあればすぐに利用でき、実務にもそのまま使える「BigQuery」をSQLの学習・実行環境として解説しています。 本書のゴールは、データ分析の実務に使えるSQLのスキルをマスターした状態です。そのため、初心者向けでありながら、難易度の高い「分析関数」(ウィンドウ関数)についても解説しています。データベースの管理やメンテナンスについては省き、データ分析に関連する内容に絞りました。 SQLの学習は、実際に手を動かすことが重要です。本書では、ビジネスシーンを意識した計230問のドリルと演習用ファイルを用意しています。ドリルで知識を定着させることで、実務に自信を持って取り組めるようになります。 発行:インプレス", "industryIdentifiers": [ { "type": "ISBN_13", "identifier": "9784295010746" }, { "type": "ISBN_10", "identifier": "429501074X" } ], "readingModes": { "text": false, "image": false }, "pageCount": 481, "printType": "BOOK", "categories": [ "Business & Economics" ], "maturityRating": "NOT_MATURE", "allowAnonLogging": false, "contentVersion": "preview-1.0.0", "panelizationSummary": { "containsEpubBubbles": false, "containsImageBubbles": false }, "imageLinks": { "smallThumbnail": "http://books.google.com/books/content?id=nMofEAAAQBAJ&printsec=frontcover&img=1&zoom=5&source=gbs_api", "thumbnail": "http://books.google.com/books/content?id=nMofEAAAQBAJ&printsec=frontcover&img=1&zoom=1&source=gbs_api" }, "language": "ja", "previewLink": "http://books.google.com.tw/books?id=nMofEAAAQBAJ&dq=intitle:BigQuery&hl=&cd=3&source=gbs_api", "infoLink": "http://books.google.com.tw/books?id=nMofEAAAQBAJ&dq=intitle:BigQuery&hl=&source=gbs_api", "canonicalVolumeLink": "https://books.google.com/books/about/%E9%9B%86%E4%B8%AD%E6%BC%94%E7%BF%92_SQL%E5%85%A5%E9%96%80_Google_BigQuery.html?hl=&id=nMofEAAAQBAJ" }, "saleInfo": { "country": "TW", "saleability": "NOT_FOR_SALE", "isEbook": false }, "accessInfo": { "country": "TW", "viewability": "NO_PAGES", "embeddable": false, "publicDomain": false, "textToSpeechPermission": "ALLOWED", "epub": { "isAvailable": false }, "pdf": { "isAvailable": true }, "webReaderLink": "http://play.google.com/books/reader?id=nMofEAAAQBAJ&hl=&source=gbs_api", "accessViewStatus": "NONE", "quoteSharingAllowed": false }, "searchInfo": { "textSnippet": "データ分析のためのSQLが最速で身につく! 昨今では、ノンエンジニアのビジネスパーソンでも、CRMの顧客情報、EC・実店舗の注文ログ、Webサイトの行動ログなどの大量のデータを ..." } } ] }
このレスポンスは、先ほどの「HTTP GET」ブロックの「レスポンスを格納する変数」プロパティの指定で、responseという名前の変数に格納されます。
この使用例では、変数に格納されたレスポンスをBigQueryテーブルに格納します。
変数に格納されたデータをBigQueryテーブルに格納するには、BigQueryカテゴリーの「変数からテーブルへロード」ブロックを使用します。使用例は、以下のとおりです。
設定するプロパティと指定値は以下のとおりです。
プロパティ | 指定値 |
---|---|
投入データの変数 |
検索結果は、レスポンスデータのitems配列内に列挙されているので、 |
投入先のデータセット |
レスポンスデータ格納用のBigQueryデータセットを指定します。 |
投入先のテーブル |
レスポンスデータ格納用のBigQueryテーブルを指定します。 |
スキーマ設定 |
スキーマ設定用JSONファイルをダウンロードし、ファイル内容を「JSONで編集」をクリックして貼り付けます。 |
この2つのブロックを組み合わせると、書籍を検索しその結果をBigQueryに格納するフローの完成です。