使用状況
階層
action |
使用可能なフィールドタイプ
ディメンション、測定デフォルト値
なし許可
各種パラメータ特別なルール
|
定義
action
パラメータは、ユーザーが他のツールのフィールド レベルのタスクを Looker から直接実行できるデータ アクションを作成します。たとえば、アクションにより、メールの送信、他のアプリケーションでの値の設定など、受信サーバーに設定できるアクションを実行できます。受信サーバーは JSON POST を受信できる必要があります。
ディメンションまたはメジャーに action
を定義できます。Explore、Look、ダッシュボードのいずれかのフィールドをクリックすると、アクションにアクセスできます。
action
を定義する際は、次のパラメータを使用して目的の動作を指定します。
パラメータ | 説明 |
---|---|
label |
操作メニューでユーザーに表示される名前を文字列で指定します。 |
url |
アクションを処理する URL を指定する文字列。[データ アクションの URL 許可リスト](/admin-options/settings/general#url_allowlist_for_data_actions) が指定されている場合は、この url 値を許可リストに追加する必要があります。許可リストに登録されたパターンに一致する URL のみが、すべてのデータ アクションに許可されます。既存のエントリがない場合、すべての URL でデータ操作が許可されます。 |
icon_url |
画像ファイルの URL を指定する文字列で、このリンクがどこに移動するかをひと目で理解しやすくなります。icon_url 値はユーザーのブラウザがアクセスできる必要があります。 |
form_url |
ユーザーに表示されるフォームを返す URL を指定する文字列。フォームは、このページの form_url または form_param を使用したフォームの動作の指定のセクションで説明されている JSON 形式で表示する必要があります。form_url は、Looker サーバーがアクセスでき、有効な証明書を持つ HTTPS を使用する必要があります。 |
param |
受信サーバーに値を渡します。 |
form_param |
このアクションで表示するフォーム入力を追加します。 |
user_attribute_param |
受信サーバーにユーザー属性を渡します。データ アクションに user_attribute_param を使用している場合は、データ アクションの url 値をデータ アクションの URL 許可リストに追加する必要があります。 |
データ アクションと同様に、Looker アクション ハブで使用可能なフィールド レベルのアクションを使用して、特定のセルからデータを送信することもできます。このオプションの詳細については、このページの Looker アクションハブの使用を検討するをご覧ください。
user_attribute_param
を使用して受信サーバーにユーザー属性を渡す
user_attribute_param
パラメータを使用すると、受信サーバーにユーザー属性を送信できます。各 user_attribute_param
内で、次のサブパラメータを指定します。
パラメータ | Type | 説明 |
---|---|---|
user_attribute |
Looker ID | Looker のユーザー属性の名前 |
name |
String | JSON ペイロードに表示する属性の名前 |
param
を使用して受信サーバーに値を渡す
param
パラメータを使用すると、JSON ペイロードで任意のデータを送信できます。各 param
内で、次のサブパラメータを指定します。
パラメータ | Type | 説明 |
---|---|---|
name |
String | 受信サーバーに渡すパラメータの名前 |
value |
String | 受信側サーバーに渡すパラメータの値 |
param
パラメータでは、機密データや個人情報(ユーザー認証情報など)を渡さないでください。代わりに、Admin 設定でユーザー属性としてユーザー認証情報を設定し、この情報をuser_attribute_param
パラメータに渡します。
form_url
または form_param
を使用してフォームの動作を指定する
Looker ユーザーが操作するフォームを作成し、フォーム入力を JSON ペイロードで送信できます。フォームは、操作がトリガーされたページ(Explore、Look、ダッシュボード、従来のダッシュボード)にオーバーレイとして表示されます。これを行うには、form_url
または form_param
パラメータを使用します。
アクションハブ サーバーでフォーム レイアウトを定義する場合は、form_url
パラメータを使用します。form_url
には、このページで後述するように、フォームの JSON 表現を返す URL を含める必要があります。
LookML でフォーム レイアウトを直接定義する場合は、form_param
パラメータを使用します。
フォームのオプション
いずれの場合も、フォームを定義するために使用できるオプションは次のとおりです。
オプション | Type | 説明 |
---|---|---|
name |
String | JSON ペイロードに表示される値の名前 |
type |
入力タイプ | ユーザーに表示されるフォーム項目の種類:select - プルダウン リストを表示string - 1 行の入力フィールドを表示textarea - 複数行のテキスト入力ボックスを表示 |
label |
String | ユーザーに表示される入力のラベル |
description |
String | 必要に応じてユーザーに表示されるフィールドの説明 |
required |
ブール値 | フォームを送信する前に、ユーザーがオプションを指定できるようにするかどうかを指定します |
default |
String | フォーム フィールドの開始値(存在する場合)。 |
option |
String | select の type を選択する場合は、ここで選択オプションを定義します |
type
を select
に設定した場合は、option
を使用して、プルダウン リストのアイテムを指定します。各 option
には次の情報が含まれます。
オプション | Type | 説明 |
---|---|---|
name |
String | JSON ペイロードに表示されるフォーム値の名前 |
label |
String | ユーザーに表示されるオプションのラベル(省略可) |
フォームなしでデータ アクションを使用する
action
定義に form_url
パラメータまたは form_param
パラメータを含めなかった場合、データ アクションにフォームは含まれません。その場合、ユーザーが [操作] メニューから操作をクリックすると、リクエストが送信されます。
フォームのないアクションがクリックされると、[Actions] メニューに、そのアクションの左側にその状態を示すアイコンが表示されます。
- 読み込みアイコンが表示され、操作が実行されていることが示されます。
- チェックマークが表示され、アクションが実行されたことがわかります。
- 丸で囲まれた [i] が表示されます。これは、操作が失敗したことを意味します。
アクションの左側にアイコンが表示されない場合、そのアクションはトリガーされていません。
サーバーの応答
HTTP レスポンスが成功すると、アクションが成功とみなされます。
サーバーは、アクションの成功に関するいくつかのオプションを Looker に返すこともできます。Webhook リクエストが JSON で応答した場合、Looker はレスポンスで特別な looker
キーを探します。それ以外はすべて無視されます。次に例を示します。
{
"my_apps_business_logic": "something",
"looker": {
"success": true,
"refresh_query": true
}
}
ここで、success
はデフォルトで true
に設定され、success
を false
に設定すると、Looker でリクエストが失敗したことを示します。また、refresh_query
はデフォルトで false
に設定され、true
に設定すると、キャッシュをスキップして現在の Looker クエリが再実行されます。
渡されたフォーム パラメータの検証エラーを返すこともできます。
{
"looker": {
"success": false,
"validation_errors": {
"body": "Body must be more than 10 characters long."
}
}
}
validation_errors
のデフォルトは {}
です。JSON オブジェクトを指定します。キーはフォーム パラメータの名前で、値はそのパラメータのエラー メッセージを表す文字列です。
例
form_url
パラメータ(この例では Liquid 構文を使用)を使用する場合は、すべてのオプションを JSON オブジェクトで返す必要があります。例:
dimension: foo {
action: {
label: "Send a Thing"
url: "https://example.com/ping/\{{ value \}}"
form_url: "https://example.com/ping/\{{ value \}}/form.json"
}
}
サーバーは LookML に一致する形式の JSON 表現を返します。
[
{
"name": "title",
"type": "select",
"label": "desired label name",
"description": "description text",
"required": true,
"default": "value string",
"options": [
{
"name": "name string"
"label": "desired label name"
},
{
"name": "name string"
"label": "desired label name"
}
]
},
{
"name": "title",
"type": "textarea",
"label": "desired label name",
"description": "description text",
"required": true,
"default": "value string",
}
]
form_param
パラメータを使用する場合、オプションは LookML パラメータとして使用されます。例:
form_param: {
name: "title"
type: select
label: "desired label name"
option: {
name: "name string"
label: "desired label name"
}
required: yes
description: "description text"
default: "value string"
}
Looker Action Hub の使用を検討する
action
パラメータは、アクション リクエストを受信するようにサーバーを設定していない場合や、再利用が制限されているユースケースを実装する場合に適しています。ただし、Looker Action Hub から使用可能なフィールド レベルのアクションの使用を検討することもできます。(インスタンスがこれらの要件を満たしていることを確認してください)。
既存の Looker Action Hub 統合に加えて、Action hub ドキュメント ページの手順に沿って独自のカスタム アクションを作成することもできます。