Skip to main content
API コネクタは、API に直接接続する簡単で完全にカスタマイズ可能な方法を提供します。接続を確立したら、組み込みのウィザードを使用して、後でジョブで使用できるテーブル形式でAPI レスポンスデータを構成します。

API コネクタを追加する

のデータを使用できるようにするには、まずコネクタを追加する必要があります:
  1. ダッシュボードの接続ページを開きます。
  2. 接続を追加をクリックしてコネクタを選択ページを開きます。
  3. データソースタブをクリックしてAPI の行を探します。
  4. その行の右端にある接続を設定アイコンをクリックします。
  5. 接続を追加ダイアログボックスに接続名を入力します。
  6. 追加をクリックしてコネクタの設定タブを開きます。

API への認証

コネクタを追加したら、必要なプロパティを設定します。 は、いくつかの方法で への認証をサポートしています。以下から認証方法を選択し、認証の詳細を含む該当セクションに進みます。

None

Basic

ユーザー資格情報で接続するには、次のプロパティを指定します:
  • Auth Scheme: Basic を選択。
  • User: API アカウントへの認証に使用するユーザー名を入力。
  • Password: API アカウントへの認証に使用するパスワードを入力。

Digest

ユーザー資格情報で接続するには、以下を指定します:
  • Auth Scheme: Digest を選択。
  • User: API アカウントへの認証に使用するユーザー名を入力。
  • Password: API アカウントへの認証に使用するパスワードを入力。

Bearer Token

OAuth アクセストークンで接続するには、以下を指定します:
  • Auth Scheme: Bearer Token を選択。
  • OAuth Access Token: OAuth を使用する際に接続に使用するアクセストークンを入力。

OAuth

OAuth カスタムクレデンシャルで接続するには、次のプロパティを指定します:
  • Auth Scheme: OAuth を選択。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。
  • OAuth Authorization URL: サインイン時にリクエストトークンを認証するために必要なOAuth 認証URL を入力。
  • OAuth Access Token URL: アクセストークンのリクエストを行うURL を入力。
    OAuth 1.0 では、認可されたリクエストトークンはアクセストークンと交換されます。
  • OAuth Refresh Token URL: アクセストークンの有効期限が切れたときにリフレッシュトークンが新しいアクセストークンと交換されるURL を入力。
    データソースによっては、このURL はアクセストークンURL と同じである可能性があります。
  • (オプション)Scope: 最初のアクセストークンとリフレッシュトークンを取得するために必要なスコープを入力。

OAuth Password

OAuth カスタムクレデンシャルで接続するには、次のプロパティを指定します:
  • Auth Scheme: OAuthPassword を選択。
  • User: API アカウントへの認証に使用するユーザー名を入力。
  • Password: API アカウントへの認証に使用するパスワードを入力。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。
  • OAuth Access Token URL: アクセストークンのリクエストを行うURL を入力。
    OAuth 1.0 では、認可されたリクエストトークンはアクセストークンと交換されます。
  • (オプション)OAuth Refresh Token URL: アクセストークンの有効期限が切れたときにリフレッシュトークンが新しいアクセストークンと交換されるURL を入力。
    データソースによっては、このURL はアクセストークンURL と同じである可能性があります。
  • (オプション)Scope: 最初のアクセストークンとリフレッシュトークンを取得するために必要なスコープを入力。

OAuth Client

OAuth カスタムクレデンシャルで接続するには、次のプロパティを指定します:
  • Auth Scheme: OAuthClient を選択。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。
  • OAuth Access Token URL: アクセストークンのリクエストを行うURL を入力。
    OAuth 1.0 では、認可されたリクエストトークンはアクセストークンと交換されます。
  • (オプション)OAuth Refresh Token URL: アクセストークンの有効期限が切れたときにリフレッシュトークンが新しいアクセストークンと交換されるURL を入力。
    データソースによっては、このURL はアクセストークンURL と同じである可能性があります。
  • (オプション)Scope: 最初のアクセストークンとリフレッシュトークンを取得するために必要なスコープを入力。

接続を完了する

接続を完了するには:
  1. Test URL に認証スキームを検証するためのURL を入力します。
  2. 接続および作成するテーブルの両方に適用されるグローバルヘッダーを定義します。詳しい手順については、ヘッダーを追加を参照してください。
  3. 必要に応じて、Other プロパティ(Miscellaneous セクションの下)で追加の設定を行います。このプロパティは、通常の使用および機能には必要ありません。ただし、必要な場合は、接続に必要な追加設定のリストをセミコロンで区切って入力してください。
  4. Advanced タブで詳細な接続設定を定義します。(ただし、ほとんどの場合、これらの設定は必要ありません。)
  5. で認証する場合は、 への接続をクリックして アカウントに接続します。
  6. 作成およびテストをクリックして接続を作成します。
接続の作成に成功したら、次のセクションで説明するように、テーブル、疑似カラム、フィルタ、およびページネーションを追加できます:

ヘッダーを追加

接続ページのヘッダーを追加セクションでは、接続および作成するテーブルの両方に適用されるグローバルヘッダーを定義できます。 すべてのAPI コールで送信されるHTTP ヘッダーを追加するには、次のプロパティを指定します:
  • Name: 名前フィールドにヘッダー名を入力(例:Token)。
  • Value: ヘッダーの値を入力(例:トークン)。
さらにヘッダーを追加する場合は、ヘッダーを追加をクリックしてヘッダー名と値を指定します。

テーブルを追加

API に接続すると、テーブル形式でAPI データを作成、表示、設定できます。 テーブルを作成するには:
  1. API 接続を開いてテーブルタブをクリックし、新規テーブルページを開きます。
  2. テーブルを追加をクリックして、新規テーブルの作成を開始します。
  3. リクエストURL セクションで:
    1. リクエストURL リストから、リクエストする方法(GET またはPOST)を選択します。
    2. 次の例に示すように、選択したメソッドの右側にある空白フィールドにAPI エンドポイントのURL を入力します: New table URL
      メソッドにPOST を選択した場合、ボディおよびコンテンツタイプの両方を指定する必要があります。
  4. フォーマットのオプション(JSON またはXML のいずれか)を選択します。
  5. このテーブルに対するすべてのAPI リクエストで送信されるURL パラメータを追加します。 パラメータを追加するには:
    1. パラメータタブにあるパラメータを追加をクリックします。
    2. 名前フィールドにパラメータ名(例:Country)を入力します。
    3. フィールドにパラメータ値(例:United States)を入力します。
    さらにパラメータを追加するには、上の手順を繰り返します。
  6. テーブルへのすべてのAPI リクエストで送信されるHTTP ヘッダーを追加します。これらのヘッダーは、API コネクタ自体を設定するときに追加するヘッダーに加えて追加されます。 ヘッダーを追加するには:
    1. ヘッダータブにあるヘッダーを追加をクリックします。
    2. 名前フィールドに名前(例:Year)を入力します。
    3. フィールドに値(例:2020)を入力します。
    さらにヘッダーを追加するには、上の手順を繰り返します。
  7. テーブル詳細カテゴリで、テーブルを設定ボタンをクリックします。このアクションにより、次の例に示すように、API レスポンスをプレビューできるテーブルを設定ダイアログボックスが開きます: Preview response
  8. 次へをクリックします。
  9. テーブルの繰り返し要素を少なくとも1つ選択します。繰り返し要素は、行として使用される繰り返し項目を含むAPI レスポンスの要素のパスです。 は検出された各配列をレスポンスデータで返すので、複数のパスを選択することができます。この例では、source が繰り返し要素です。 Repeat elements は可能な繰り返し要素をインテリジェントに判断しようとしますが、特定のシナリオでは検出することができません。そのような場合は、次のようにカスタム繰り返し要素パスを設定する必要があります:
    1. カスタム繰り返し要素を使用(ダイアログボックスの右上隅)をクリックします。
    2. 繰り返し要素を追加をクリックします。
    3. 繰り返したい要素のパスを入力します。
  10. 次へをクリックします。
  11. 含める特定のカラムを選択します。 Select columns すべてのカラムを含めるには、カラムリストの右上にあるすべて選択をクリックします。
  12. 次へをクリックします。これにより、ダイアログボックスにテーブルをプレビュータブが開き、選択したカラムを含むテーブルが表示されます。
  13. テーブル名フィールドにテーブルの名前を入力します。 Name your table
  14. Confirm をクリックし、テーブルの選択内容を保存します。
  15. 保存新規テーブルページの右上隅)をクリックして、API コネクタページ上のテーブルへのリンクを保存します。 Table on API connector page

疑似カラムを追加

疑似カラムはテーブルカラムの動作を模倣しますが、疑似カラムはソーステーブルやAPI に物理的に格納されません。これらのカラムを使用すると、API に(SQL WHERE 句経由で)送信されるリクエストを変更できますが、その値は同期先テーブルには複製されません。 で疑似カラムを作成するには:
  1. API コネクタからテーブル > タスクを選択します。
  2. タスクページ下部のテーブル詳細セクションに移動し、疑似カラムタブをクリックします。
  3. 疑似カラムを追加をクリックします。 Add pseudocolumn
  4. カラム名テキストボックスに、疑似カラムの名前を入力します。次に、データ型リストから適切なデータ型を選択します。 Add pseudocolumn name and type 上の画像で示すように、アウトプットチェックボックスをON にすることで、API テーブルの結果内に疑似カラムを出力することを選択できます。さらに、タスクのWHERE 句に疑似カラムを含めることを必須にしたい場合は、必須チェックボックスをON にします。タスクがWHERE 句に疑似カラムを含めない場合、 は次の例のようなエラーメッセージを生成します: Warning message 疑似カラムを削除するには、疑似カラム行の最後にある削除アイコンをクリックします。
  5. 保存をクリックします。

API コネクタテーブルのカラム属性の変更

アプリケーションでは、テーブルページのテーブル詳細セクションから、API コネクタテーブルの特定のカラム属性(カラムサイズ、精度、スケール)を編集できます。これらの設定は接続設定に保存され、バックアップ / 復元およびジョブインポート / エクスポート処理中に保持されます。
  • カラムサイズ: String およびBinary 型で使用できます(デフォルトサイズは2000)。
  • 精度: Time、DateTime、Decimal、Float、Double 型で使用できます。
  • スケール: Decimal 型でのみ使用できます。
レプリケーションは更新された定義で正しく動作し、新しいビルドへのアップグレードは既存の機能に影響しません。
カラム属性を変更するには、API 接続を開いて次の手順に従います:
  1. テーブルタブをクリックします。既存のテーブルを編集するか、新しいテーブルを作成できます。
  2. 編集するテーブルの名前をクリックします(またはテーブルを設定をクリックして新しいテーブルを作成します)。
  3. テーブルページのテーブル詳細セクションで、変更するデータカラムを見つけ、テーブルのデータ型カラムでその属性を編集します。 次の例には、String(カラムサイズ)、Decimal(スケール)、Double(精度)型を使用し、そのデフォルト値が変更されたデータカラムが含まれています: Modify column attributes
  4. テーブルページの上部にある保存をクリックして、変更を保存します。

フィルタを追加

カラムを持つテーブルを作成したら、クエリ中にWHERE 句が発行されたときのAPI コネクタの動作を定義するフィルタを作成できます。フィルタは、フィルタリング処理をサーバー側のAPI に委任することでパフォーマンスを向上させます。フィルタを含めない場合、クエリオプションは代わりに によって処理されます。

フィルタの作成

テーブルの各カラムにフィルタを作成できます。 フィルタを作成するには:
  1. 以下で示すように、新規テーブルページにあるフィルタタブをクリックします。 Filter defined
  2. カラムリストの下にあるフィルタを追加をクリックします。
  3. フィルタしたいカラムをカラムリストから選択します。
  4. Operator リストから条件を選択します。次のオプションから選択可能です:
    • 次と等しい
    • 次と等しくない
    • 次より小さい
    • 次より小さいか等しい
    • 次より大きい
    • 次より大きいか等しい
  5. Type リストから種類(パラメータまたはヘッダー)を選択します。次に、カラム名と一致しない場合はパラメータ名またはヘッダー名を入力します。
  6. 保存(ページ右上)をクリックしてフィルタを保存します。
次の例は、Reports テーブル内のレコードをレコードの作成日でフィルタリングするクエリを処理するフィルタを作成する方法を示しています。 クエリ例
このテーブルにフィルタが定義されていない場合、コネクタはAPI からすべての行を読み取り、指定されたCreatedDate カラムでメモリ内のリストをフィルタリングすることによって、メモリ内でこのフィルタを処理します。ただし、この例のAPI はサーバー側でこのタイプのフィルタリングをサポートしているため、パフォーマンスを大幅に向上させることができます。 次の例は、このクエリがAPI にどのように見えるかを示しています:
コネクタがこのフィルタをAPI に送信する方法を指定するには、次のフィールドを指定する必要があります:
  • Column: CreatedDate
  • Operator: Greater Than
  • Filter Type: Parameter
  • Parameter Name: startdate
これらの仕様は、CreatedDate カラムにGreater Than 演算子が指定されている場合、API リクエストのフィルタ値にstartDate URL パラメータを含めるよう接続に指示します。

行ごとのリクエスト機能を使用したデータのフィルタリング

アプリケーションでは、行ごとのリクエスト機能を使用してデータをサブセット化できます。行ごとのリクエストにより、SQL IN 句を使って がフィルタ値ごとに個別のリクエストを渡すことができます。この機能は、子データセットをクエリする際に、そのクエリが親データセットの識別子(Id)が必要な場合に便利です。例えば、請求書データセット(親)から、ラインアイテム(子)を別々の行として1つの同期先テーブルに分割したいとします。次のクエリは、請求書Id 値に対する個別のリクエストを動的に渡します:
さらに、フィルタ内でInner SELECT クエリを使用して請求書Id の動的リストを渡すことができます:
行ごとのリクエスト機能を有効にするには:
  1. リクエストURL を変更して、中かっこ内に一意のレコード識別子カラムの名前を含めます。中かっこ内にカラム名を追加すると、リクエストURLテキストボックス右端の上に行ごとのリクエストが検出されましたが表示されます。
  2. テーブルを設定をクリックします。
  3. 一意のレコード識別子カラムのサンプル値を入力します。
  4. テーブルを追加セクションの手順7~13に従います。
    一意のレコード識別子カラム(大文字小文字を区別)と一致するカラムまたは疑似カラムが存在することを確認してください。一致しない場合、 は警告を表示します。
  5. 保存新規テーブルページの右上)をクリックします。

ページネーションを追加

は、複数の種類のページング実装をサポートしています。ページネーションタイプを追加するには:
  1. ページネーションタブをクリックします。
  2. Type リストからページネーションの種類を選択します。次の種類から選択可能です:
    • None: API リクエストが1つのレスポンスで完全なデータセットを返す場合は、このタイプを選択。
    • Offset: API リクエストがページング用のレコードオフセットパラメータを提供する場合は、このタイプを選択。詳しくは、Offsetを参照してください。
    • Number: API リクエストに現在のページ番号を指定するパラメータが含まれている場合は、このタイプを選択。詳しくは、Numberを参照してください。
    • Token: API レスポンスに次のページ用のトークンが含まれている場合は、このタイプを選択。詳しくは、Tokenを参照してください。
    • URL: API レスポンスに次のページ用のURL が含まれている場合は、このタイプを選択。詳しくは、URLを参照してください。
  3. 保存(ページ右上)をクリックしてページネーションの設定を保存します。

Offset

Offset を選択した場合は、次のプロパティを指定する必要があります:
  • Offset Parameter: API リクエストでオフセットを定義するURL パラメータの名前を入力。
  • Page Size: ページごとに取得したいレコード数を入力。API コネクタは、この値を使用してオフセットを計算します。
  • (オプション)Page Size Parameter: ページごとに取得するレコード数を定義するURL パラメータの名前を入力。ページサイズを制御するパラメータがない場合は、Page Size Parameter を設定する必要はありません。ただし、その場合は、Page Size をデフォルトのページサイズに設定する必要があります。
次のリクエストでは、Offset ParameterpageOffset に、Page Size ParameterpageSize に、Page Size1000 に設定されています。この例では、コネクタがオフセットを自動的にインクリメントするため、データのページ6に対するリクエストを示しています:

Number

Number を選択した場合は、次も指定する必要があります:
  • Page Number Parameter: ページ番号を定義するURL パラメータの名前を入力。
  • (オプション)Page Size Parameter: ページサイズを定義するURL パラメータの名前を入力。
  • (オプション)Page Size: ページごとに取得したいレコード数を入力。
次のリクエストでは、Page Number ParameterpageNum に、Page Size ParameterpageSize に、Page Size1000 に設定されています。この例では、コネクタがページを自動的にインクリメントするため、データのページ6に対するリクエストを示しています:

Token

Token を選択した場合は、次を指定する必要があります:
  • Token Path: 次ページのトークンを定義するAPI レスポンスのパスを入力。
  • (オプション)Has More Path: レコードが使用可能かどうかを定義するAPI レスポンスのパスを入力。
  • Token Source: この設定は、トークンをURL パラメータとしてリクエストで送信するか、リクエストボディで送信するかを決定します。必要なオプションを選択してください:
    • Request Path: がページングトークンを設定するリクエストボディのパスを入力。
    • URL Parameter: がページングトークンに渡すURL パラメータの名前を入力。
URL パラメータの使用例 次のリクエストでは、URL ParameterpageToken に、Token Path/results/nextpagetoken に設定されています。 リクエスト: https://myapi?pageToken=123456 レスポンス:
リクエストパスの使用例 次のリクエストでは、Request Path/request/pageToken に、Token Path/results/nextpagetoken に、Has More Path/results/morePages に設定されています。 リクエストボディ
レスポンス

URL

URL を選択した場合は、URL ソースも選択する必要があります:
  • Header Name: 次ページURL がリンクヘッダーとともにレスポンスヘッダーに渡される場合は、ヘッダー名を入力。
  • Request Path: 次ページURL を定義するAPI レスポンスのパスを入力。この値はXPath 記法で指定する必要があります。次の例を参照してください。
リクエストパスの使用例 次の例では、Request Path/results/nextpageurl に設定されています。 レスポンス: