ブロックリファレンス

BLOCKS Reference

API

HTTP POST

概要

このブロックは、指定されたURL(HTTPサーバー)へ、HTTPopen_in_newのPOSTメソッドを使って要求(リクエスト)を送り、応答(レスポンス)としてリソース(データ)を取得します。

リクエストには、任意のクエリーパラメーターopen_in_newパラメーターopen_in_newリクエストヘッダーopen_in_newを含められます。

レスポンスは、変数に格納できます。

本ブロックを使うことで、HTTP POSTメソッドのWeb APIとの連携が可能です。

レスポンスの"HTTP Status"が400番台、500番台の時は、ブロックの実行が失敗します。

パラメーターは、"Content-Type = application/x-www-form-urlencoded"でリクエストボディにURLエンコードされた文字列として渡されます。

infoContent-Type: application/jsonでPOSTしたい場合は、「HTTP POST(JSON)」ブロックが利用できます。

プロパティ

プロパティ名 説明
ブロック名 ブロックの名前を指定します。ブロックに表示されます。
URL リクエストするURLを指定します。
クエリーパラメーター

クエリーパラメーターを指定します。キーとバリューの組み合わせで指定します。

バリューのみ:
変数展開の指定が可能][%形式の文字列書式の指定が可能]
パラメーター

パラメーターを指定します。キーとバリューの組み合わせで指定します。

バリューのみ:
変数展開の指定が可能][%形式の文字列書式の指定が可能]
ブロックメモ ブロックに対するコメントを指定します。
エラー時の繰り返し回数 リクエストエラー時の繰り返し回数を指定します。
繰り返し間隔 リクエストエラー時の繰り返し間隔を秒単位で指定します。
レスポンスを格納する変数

HTTPサーバーが返すレスポンスを格納する変数を指定します。

変数に格納する値は、レスポンスのメッセージ・ボティのみです。レスポンスの「Content-Type」ヘッダーが「application/json」の場合は、メッセージ・ボディをデコードした結果を変数に格納します。

詳細については、「出力仕様>HTTP GET/HTTP POST/HTTP PUT」を参照してください。

リクエストヘッダー

リクエストヘッダーopen_in_newを指定します。キーとバリューの組み合わせで指定します。

「Bearerトークン認証」や「Basci認証」などのように、Web APIによっては追加のリクエストヘッダーが必要な場合があります。このプロパティは、そのような場合に使用します。

以下は、「Bearerトークン認証」を指定した例です。

バリューのみ:
変数展開の指定が可能][%形式の文字列書式の指定が可能]

使用例

ここでは、JSONPlaceholderopen_in_newを使用して、「HTTP PUT」ブロックの使い方を紹介します

JSONPlaceholderは、ウェブ開発者がデータをモックアップするためのWebサービスで、JSON形式でデータを返します。RESTfulなAPIとして機能し、HTTPリクエスト(POST、GET、PUT、DELETEなど)を受け付けます。

JSONPlaceholderを使用したHTTP POSTの例について簡単に説明します。以下は、新しくブログなどの記事を投稿するAPIの仕様です。

  • URL:https://jsonplaceholder.typicode.com/posts
  • パラメーター:
    パラメーター名 説明
    userId

    投稿のユーザーID

    title

    投稿のタイトル

    body

    投稿の本文

これを「HTTP POST」ブロックで実現すると以下のようになります。

設定するプロパティと指定値は以下のとおりです。

プロパティ 指定値
URL

https://jsonplaceholder.typicode.com/posts

クエリーパラメーター
キー バリュー
userId 1
title example
body This is an example API.
レスポンスを格納する変数

response

このブロックを実行すると、以下のようなレスポンスが返ってきます。

{
  "userId": "1",
  "title": "example",
  "body": "This is an example API.",
  "id": 101
}
名前 内容
userId

投稿のユーザーID

title

投稿のタイトル

body

投稿の本文

id

投稿のID

このレスポンスは、「HTTP POST」ブロックの「レスポンスを格納する変数」プロパティで設定したresponseという名前の変数に格納されます。

この使用例では、変数に格納されたレスポンスをデータ投稿の履歴としてBigQueryテーブルに格納することにします。

変数に格納されたデータをBigQueryテーブルに格納するには、BigQueryカテゴリーの「変数からテーブルへロード」ブロックを使用します。使用例は、以下のとおりです。

設定するプロパティと指定値は以下のとおりです。

プロパティ 指定値
投入データの変数

response

投入先のデータセット

レスポンスデータ格納用のBigQueryデータセット

投入先のテーブル

レスポンスデータ格納用のBigQueryテーブル

スキーマ設定

上図のように指定

この2つのブロックを組み合わせてフローの完成です。

この情報は役に立ちましたか?