転送先としてカスタムコネクタを作成する

Prev Next

本ページでは、転送先としてカスタムコネクタを作成する手順について説明します。
接続情報や転送に関する設定については、以下のドキュメントを参照ください。

入力項目

基本情報

項目名 必須 説明
名前 Yes TROCCO内部で利用するカスタムコネクタの名前を入力します。
メモ No TROCCO内部で利用するカスタムコネクタのメモを入力できます。

コネクタ情報

項目名 必須 説明
ベースURL Yes カスタムコネクタで取得対象とするREST APIのベースURLを入力します。
ベースURLとは、APIのすべてのエンドポイントにアクセスする際の基本となるURLです。
例:https://api.example.com/api/v1

認証情報

項目名 必須 説明
認証種別 Yes 認証種別を選択します。APIキーまたはOAuth2による認証に対応しています。
選択した認証種別によって、認証情報で入力する項目が変わります。

認証種別でOAuth2を選択した場合の追加項目

項目名 必須 デフォルト値 説明
グラントタイプ Yes 認可コード OAuthで認証を付与する方式(グラントタイプ)を選択します。
取得対象のAPIで利用できるグラントタイプを選択してください。
  • 認可コード
  • クライアントクレデンシャルズ
認可URL Yes - グラントタイプに認可コードを選択した場合のみ、入力が必要な項目です。
OAuthの認可サーバーへの遷移先となる認可URLを入力します。利用するOAuthサービスから取得してください。
アクセストークンURL Yes - OAuthにアクセストークンをリクエストする先となるアクセストークンURLを入力します。利用するOAuthサービスから取得してください。

各認証種別で共通の項目

項目名 必須 デフォルト値 説明
認証ヘッダ名 Yes Authorization APIキーを送信するヘッダーの名称を入力します。
認証スキーム No Bearer 認証情報のスキームを入力します。

エンドポイント

カスタムコネクタで取得対象とするAPIのエンドポイントごとに設定を追加します。

項目名 必須 デフォルト値 説明
名前 Yes - エンドポイントの名前を入力します。
操作種別 Yes 作成API どの操作種別としてエンドポイントを定義するか選択します。
  • 作成API:転送データを新しいレコードとして登録する際に使用するエンドポイントとして設定します。
  • 更新API:既存レコードを更新する際に使用するエンドポイントとして設定します。
リクエストタイプ Yes 単一リクエスト 実行するAPIのリクエストタイプを選択します。
  • 単一リクエスト:1レコードごとに1回のAPIリクエストを送信します。使用するAPIが単一リクエストの仕様である場合に選択します。
  • 一括リクエスト:複数レコードをまとめて1回のAPIリクエストで送信します。使用するAPIが複数レコードの一括追加に対応している場合などに選択します。
バッチサイズ Yes - リクエストタイプで一括リクエストを選択した場合のみ指定できます。指定した件数単位でレコードが転送されます。
パス Yes - ベースURLで指定したURL部分を除いた、APIエンドポイントのパスを入力します。
詳しくは、パスの指定についてを参照ください。
HTTPメソッド Yes POST HTTPメソッドを選択します。
POSTPUTPATCHをサポートしています。
リクエストテンプレート Yes - 転送先サービスへのAPIリクエストに使用するペイロードのフォーマットを定義します。詳しくは、リクエストテンプレートの定義についてを参照ください。
HTTPヘッダ No - リクエストに必要なHTTPヘッダを設定します。
  • デフォルト値:パラメータのデフォルト値を入力します。
  • 編集可能:チェックを入れた場合、転送設定時にパラメータの値を入力できるようになります。
  • 必須:チェックを入れた場合、転送設定時にパラメータの値の入力が必須になります。
リクエストタイプの選択について

転送先サービスが複数レコードの一括追加に対応したAPIを提供している場合、作成APIは一括リクエストの指定を推奨します。
単一リクエストでも転送は可能ですが、転送先サービスが規定するRate Limitによるボトルネックが生じる可能性が高まります。

詳細設定

項目名 必須 デフォルト値 説明
転送データ取得時に正常系と判定するステータスコード Yes 200,201,204 データ転送の成功とみなすレスポンスのステータスコードを指定します。
カンマ区切りで複数指定できます。
失敗時にリトライしないステータスコード Yes 400,401,403,404 データ転送の失敗として再転送を実行しないレスポンスのステータスコードを指定します。
権限が足りない場合など、カスタムコネクタの準備・設定に起因するエラーに対するステータスコードの指定を推奨します。
カンマ区切りで複数指定できます。

接続確認

設定したエンドポイントの接続を確認できます。

接続確認によるデータ転送について

接続確認では実際にAPIリクエストを送信するため、転送先のサービスにデータが登録される可能性があります。
接続確認で本番環境へのデータ転送を避けたい場合は、転送先サービス側の検証環境に接続できる接続情報の利用を推奨します。

接続確認には事前に接続情報を設定する必要があるため、一度カスタムコネクタを作成して接続情報を設定したのち、実行してください。

項目名 必須 デフォルト値 説明
接続確認に利用する接続情報 Yes - 接続確認に利用する接続情報を選択します。
ヘッダ No - エンドポイント設定で指定したHTTPヘッダの値を入力できます。
接続確認に利用するサンプルデータ No - 接続確認に利用するサンプルデータを指定します。

パスの指定について

Liquidテンプレート構文を使用し、データ転送時のリクエスト先URLに変数を埋め込むことができます。
事前にIDを指定した上でレコードを追加したり、既存レコードのカラムの値をキーとしてレコードを更新したい場合に利用できます。

転送設定STEP2で設定するカラムをrow.カラム名 の形で変数として利用できます。

パスの展開結果は転送設定STEP2で確認できます。

リクエストURLに変数を利用できないエンドポイント

リクエストタイプが一括リクエストのエンドポイントについては、Liquidテンプレート構文によるリクエストURL内の変数を利用できません。
固定URLのみ指定できます。

リクエストテンプレートの定義について

Liquidテンプレート構文を使用し、リクエスト時のペイロードの内容を定義できます。

単一リクエストの場合

転送設定STEP2で設定するカラムをrow.カラム名 の形で参照します。

{
  "field1": "{{ row.column1 }}",
  "field2": "{{ row.column2 }}"
}

一括リクエストの場合

レコードのデータは rows に配列で格納されます。for文を利用して配列を展開し、各レコードを定義します。

{
  "records": [
    {% for row in rows %}
    {
      "field1": "{{ row.column1 }}",
      "field2": "{{ row.column2 }}",
      "field3": "{{ row.column3 }}"
    }{% unless forloop.last %},{% endunless %}
    {% endfor %}
  ]
}

テンプレートプレビューを利用すると、定義したテンプレートに値を指定し、ペイロードの内容を確認できます。

また、転送設定STEP2では、実際の転送元データによるプレビューも確認できます。

テンプレートの形式について

Liquidテンプレートのすべての形式・記法には対応していません。
動作を保証しているフォーマットはJSONのみとなります。