用途
view: view_name {
dimension: field_name {
action: {
label: "Label to Appear in Action Menu"
url: "https://example.com/posts"
icon_url: "https://looker.com/favicon.ico"
form_url: "https://example.com/ping/{{ value }}/form.json"
param: {
name: "name string"
value: "value string"
}
form_param: {
name: "name string"
type: textarea | string | select
label: "possibly-localized-string"
option: {
name: "name string"
label: "possibly-localized-string"
}
required: yes | no
description: "possibly-localized-string"
default: "string"
}
user_attribute_param: {
user_attribute: user_attribute_name
name: "name_for_json_payload"
}
}
}
}
|
階層
action |
使用可能なフィールドタイプ
ディメンション、メジャー
デフォルト値
なし
許可
さまざまなパラメータ
特別なルール
|
定義
action パラメータは、ユーザーが Looker から直接他のツールでフィールド レベルのタスクを行えるようにするデータ アクションを作成します。たとえば、action はメールを送信したり、他のアプリケーションで値を設定したり、受信サーバー上で構成可能なその他のアクションを実行したりできます。受信サーバーが JSON POST を受け入れるようにする必要があります。
ディメンションまたは指標に action を定義できます。Explore ページ、Look、ダッシュボードでフィールドを選択すると、アクションにアクセスできます。

action を定義するときに、次のパラメータを使用して選択した動作を指定します。
| パラメータ | 説明 |
|---|---|
label |
操作メニューでユーザーに表示されるアクションの名前を指定する文字列です。 |
url |
アクションを処理する URL を指定する文字列。データ アクションの URL 許可リストが指定されている場合は、この 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 Action Hub で利用可能なフィールド レベルのアクションを使用して、特定のセルからデータを送信することもできます。このオプションの詳細については、このページの Looker Action Hub の使用を検討するをご覧ください。
user_attribute_param を使用して受信サーバーにユーザー属性を渡す
user_attribute_param パラメータを使用すると、受信サーバーにユーザー属性を送信できます。各 user_attribute_param 内で、次のサブパラメータを指定します。
| パラメータ | 型 | 説明 |
|---|---|---|
user_attribute |
Looker ID | Looker のユーザー属性の名前 |
name |
文字列 | JSON ペイロードに表示する属性の名前 |
param を使用して受信サーバーに値を渡す
param パラメータを使用すると、JSON ペイロードで任意のデータを送信できます。各 param 内で、次のサブパラメータを指定します。
| パラメータ | 型 | 説明 |
|---|---|---|
name |
文字列 | 受信サーバーに渡すパラメータの名前 |
value |
文字列 | 受信サーバーに渡すパラメータの値 |
paramパラメータで、ユーザー認証情報などの機密データや個人情報を渡さないでください。代わりに、管理設定でユーザー認証情報をユーザー属性として構成し、この情報をuser_attribute_paramパラメータで渡します。
form_url または form_param を使用してフォームの動作を指定する
Looker ユーザーが操作できるフォームを作成し、フォームの入力を JSON ペイロードで送信できます。フォームを表示すると、アクションがトリガーされたページ(Explore、Look、ダッシュボード)にオーバーレイとして表示されます。これは、form_url パラメータまたは form_param パラメータのいずれかを使用して実行できます。
アクション ハブサーバーでフォーム レイアウトを定義する場合は、form_url パラメータを使用します。form_url には、このページの後半で説明する形式の JSON 表現を返す URL を含める必要があります。
フォーム レイアウトを LookML で直接定義する場合は、form_param パラメータを使用します。
フォームのオプション
どちらの場合も、フォームの定義に使用できるオプションは次のとおりです。
| オプション | タイプ | 説明 |
|---|---|---|
name |
文字列 | JSON ペイロードに表示される値の名前 |
type |
入力タイプ | ユーザーに表示されるフォーム フィールドのタイプ:
|
label |
文字列 | ユーザーに表示される入力のラベル |
description |
文字列 | ユーザーに表示されるフィールドの説明 |
required |
ブール値 | フォームを送信する前に、ユーザーがフォーム オプションを指定する必要があるかどうかを指定します |
default |
文字列 | フォーム フィールドの開始値(ある場合) |
option |
文字列 | type に select を選択した場合は、ここで選択オプションを定義します。 |
type を select に設定した場合は、option を使用してプルダウン リストの項目を指定します。各 option には次の詳細が含まれます。
| オプション | タイプ | 説明 |
|---|---|---|
name |
文字列 | JSON ペイロードに表示されるフォーム値の名前 |
label |
文字列 | ユーザーに表示されるオプションのラベル(省略可) |
フォームなしでデータアクションを使用する
action 定義に form_url パラメータまたは form_param パラメータを含めない場合、データアクションにフォームは含まれません。その場合、ユーザーが [アクション] メニューからそのアクションを選択すると、アクションはリクエストを送信します。
フォームのないアクションを選択すると、[アクション] メニューにアクションの左側にアイコンが表示され、アクションの状態が示されます。
- 読み込みアイコンが表示され、アクションが実行中であることが示されます。

- チェックマークが表示され、アクションが実行されたことが示されます。

- 丸で囲まれた 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 の要件を満たしていることを確認してください)。
既存の Looker Action Hub 統合に加えて、アクション ハブのドキュメント ページの手順に沿って独自のカスタム アクションを作成することもできます。