ハウツーガイド - ヘッダー認証
ヘッダー認証を必要とするAPIでは、ユーザーがユーザー入力フィールドを通じてトークンを直接提供する場合、これは簡単に実現できます。
サンプルコネクター - 汎用コネクター
{
title: 'My connector',
connection: {
fields: [
{
name: "token",
control_type: "string",
label: "Bearer token",
optional: false,
hint: "Available in 'My Profile' page"
}
],
authorization: {
type: 'custom_auth',
apply: lambda do |connection|
headers("Authorization": "Bearer #{connection["token"]}")
end
},
base_uri: lambda do |connection|
"https://api.acmestudios.com"
end
},
test: lambda do |connection|
get('/me')
end,
}ステップ1 - コネクションフィールドの定義
connectionキーでは、ハッシュの配列としてfieldsキーに入力フィールドを定義します。 配列内の各ハッシュは、単一の入力フィールドを表します。 その中で、入力フィールドの名前やエンドユーザーに表示されるヒントなどのパラメーターを宣言できます。 この例では、'token'入力フィールドを定義します。
TIP
フィールドを定義するときは、少なくともnameキーを指定する必要があります。 optional、hint、control_typeなどの追加属性を使用すると、これらのフィールドの他の側面をカスタマイズできます。 Client Secretなどの機密情報には、control_typeとしてpasswordを使用してください。
Workatoでの入力フィールドの定義の詳細については、コネクションフィールドを参照してください。
ステップ2 - 後続のHTTPリクエストへのトークンの適用
applyキーでは、ユーザーが提供したトークンをキーと値のペアの形式でheader()に渡します。 これにより、Workatoはコネクターが行うすべてのHTTPリクエストにトークンを追加し、各リクエストの認証に役立てます。
ステップ3 - APIのベースURIの設定
このコンポーネントは、APIのベースURLをWorkatoに指示します。 このキーは任意ですが、HTTPリクエストを定義する際に、コネクターの残りの部分で相対パスのみを指定できるようになります。 base_uriの設定の詳細については、ベースURI設定を参照してください。
base_uri: lambda do |connection|
"https://api.acmestudios.com"
endTIP
このラムダ関数はconnection引数にもアクセスできます。 これは、ユーザーのインスタンスに基づいてAPIのベースURIが変わる可能性がある場合に特に便利です。 connection引数には次の形式でアクセスできます。
base_uri: lambda do |connection|
"https://#{connection['domain'].com/api}"
endステップ4 - コネクションのテスト
エンドユーザーから収集する必要があるフィールドと、それらのフィールドからの入力をどう処理するかを定義したので、次にこのコネクションをテストする方法が必要です。 これはtestキーで処理されます。
test: lambda do |connection|
get("/me")
endこのブロックでは、受け取ったばかりの新しい認証情報を使用してサンプルリクエストを送信できるエンドポイントを指定する必要があります。 200 OK HTTPレスポンスを受信すると、コネクションをSuccessfulとして表示します。 上記の例では、サンプルエンドポイント/meにGETリクエストを送信し、トークンが有効な場合は200レスポンスが返ることを想定しています。
コネクションSDKリファレンス
connectionキー内で使用可能なキーとそのパラメーターに慣れるには、SDKリファレンスを確認してください。
Last updated: