Uso
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"
}
}
}
}
|
Jerarquía
action |
Tipos de campos posibles
Dimensiones, mediciones
Valor predeterminado
Ninguno
Acepta
Varios parámetros
Reglas especiales
|
Definición
Este parámetro crea una acción de datos que permite a los usuarios realizar tareas a nivel del campo en otras herramientas, directamente desde Looker.action Por ejemplo, la acción puede hacer que se envíe un correo electrónico, establecer valores en otras aplicaciones o realizar cualquier otra acción que puedas configurar para que la ejecute un servidor receptor. El servidor receptor debe poder aceptar una solicitud POST de JSON.
Puedes definir un action para una dimensión o una medición. Para acceder a la acción, selecciona su campo cuando estés en una página Explorar, un Look o un panel.

Cuando defines una action, especificas el comportamiento elegido con los siguientes parámetros:
| Parámetro | Descripción |
|---|---|
label |
Es una cadena que especifica el nombre de la acción tal como aparecerá para los usuarios en el menú de acciones. |
url |
Es una cadena que especifica la URL para procesar la acción. Si se especifica una lista de URLs permitidas para las acciones de datos, debes agregar este valor url a la lista de entidades permitidas. Solo se permiten las URLs que coincidan con el patrón de la lista de entidades permitidas para cualquier acción de datos. Si no hay entradas existentes, se permiten todas las URLs para las acciones de datos. |
icon_url |
Es una cadena que especifica una URL que contiene un archivo de imagen para que los usuarios puedan comprender, de un vistazo, a dónde los dirigirá este vínculo. Se debe poder acceder al valor icon_url desde el navegador del usuario. |
form_url |
Es una cadena que especifica una URL que mostrará un formulario para presentar a los usuarios. El formulario debe presentarse en formato JSON, como se describe en la sección Especifica el comportamiento del formulario con form_url o form_param de esta página. Se debe poder acceder a form_url desde el servidor de Looker, y debe usar HTTPS con un certificado válido. |
param |
Pasa un valor al servidor receptor. |
form_param |
Agrega una entrada de formulario que se mostrará para esta acción. |
user_attribute_param |
Pasa un atributo de usuario al servidor receptor. Debes agregar el valor url de la acción de datos a la lista de URLs permitidas para las acciones de datos si usas un user_attribute_param para tu acción de datos. |
Al igual que una acción de datos, también puedes usar una acción a nivel del campo disponible en el Centro de acciones de Looker para enviar datos desde una celda específica. Consulta la sección Considera usar el Centro de acciones de Looker en esta página para obtener más información sobre esta opción.
Cómo pasar atributos de usuario al servidor receptor con user_attribute_param
Puedes enviar atributos de usuario al servidor receptor con el parámetro user_attribute_param. Dentro de cada user_attribute_param, especificarás los siguientes subparámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
user_attribute |
ID de Looker | El nombre del atributo de usuario en Looker |
name |
String | El nombre del atributo tal como deseas que aparezca en la carga útil JSON |
Cómo pasar valores al servidor receptor con param
Puedes enviar datos arbitrarios en tu carga útil JSON con el parámetro param. Dentro de cada param, especificarás los siguientes subparámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
name |
String | Nombre de un parámetro para pasar al servidor receptor |
value |
String | Valor de un parámetro para pasar al servidor receptor |
No pases datos sensibles ni información privada, como credenciales de usuario, en el parámetro
param. En su lugar, configura las credenciales de usuario como un atributo de usuario en la configuración de administrador y pasa esta información en el parámetrouser_attribute_param.
Especifica el comportamiento del formulario con form_url o form_param
Puedes crear un formulario para que los usuarios de Looker interactúen con él y, luego, enviar la entrada del formulario en tu carga útil JSON. Si muestras un formulario, aparecerá como una superposición en la página (Explorar, Look o panel) en la que se activó la acción. Puedes hacerlo con el parámetro form_url o form_param.
Si deseas que el servidor del Centro de acciones defina el diseño del formulario, usa el parámetro form_url. form_url debe contener una URL que muestre una representación JSON del formulario como se describe más adelante en esta página.
Si deseas definir el diseño del formulario directamente en LookML, usa el parámetro form_param.
Opciones de formulario
En ambos casos, las opciones posibles que puedes usar para definir el formulario son las siguientes:
| Opción | Tipo | Descripción |
|---|---|---|
name |
String | El nombre del valor tal como aparecerá en tu carga útil JSON |
type |
Tipo de entrada | El tipo de campo de formulario que se mostrará al usuario:
|
label |
String | La etiqueta de la entrada tal como aparecerá para los usuarios |
description |
String | Una descripción del campo que aparecerá para los usuarios |
required |
Booleano | Especifica si el usuario debe proporcionar la opción del formulario antes de enviarlo. |
default |
String | El valor inicial del campo de formulario, si existe |
option |
String | Si eliges un type de select, define las opciones de selección aquí. |
Si configuras el type como select, especifica los elementos de la lista desplegable con option. Cada option incluye los siguientes detalles:
| Opción | Tipo | Descripción |
|---|---|---|
name |
String | Nombre del valor del formulario tal como aparecerá en tu carga útil JSON |
label |
String | La etiqueta de la opción tal como aparecerá para los usuarios (opcional) |
Cómo usar una acción de datos sin un formulario
Si no incluyes un parámetro form_url o form_param en tu definición de action, la acción de datos no incluirá un formulario. En ese caso, la acción envía una solicitud cuando un usuario selecciona esa acción en el menú Acciones.
Después de seleccionar una acción sin un formulario, el menú Acciones muestra íconos a la izquierda de la acción para indicar su estado:
- Aparece un ícono de carga, que muestra que la acción se está ejecutando.

- Aparece una marca de verificación, que muestra que la acción se ejecutó.

- Aparece una i encerrada en un círculo, que indica que la acción falló.

Si no aparece ningún ícono a la izquierda de una acción, no se activó la acción.
Respuestas del servidor
Una respuesta HTTP correcta se considerará una acción exitosa.
El servidor también puede pasar algunas opciones a Looker con respecto al éxito de la acción. Si la solicitud de webhook responde con JSON, Looker busca una clave looker especial en la respuesta. Se ignora todo lo demás. Por ejemplo, en:
{
"my_apps_business_logic": "something",
"looker": {
"success": true,
"refresh_query": true
}
}
Aquí, success tiene el valor predeterminado true, y configurar success como false indicará en Looker que la solicitud falló. Además, refresh_query tiene el valor predeterminado false, y configurarlo como true volverá a ejecutar la consulta actual de Looker, omitiendo la caché.
También puedes responder con errores de validación para cualquier parámetro de formulario que se haya pasado:
{
"looker": {
"success": false,
"validation_errors": {
"body": "Body must be more than 10 characters long."
}
}
}
Aquí, validation_errors tiene el valor predeterminado {}. Debe ser un objeto JSON en el que las claves sean los nombres de los parámetros del formulario y el valor sea una cadena que represente un mensaje de error para ese parámetro.
Ejemplos
Si usas el form_url parámetro (con sintaxis de Liquid en este ejemplo), todas las opciones deben mostrarse en un objeto JSON. Por ejemplo:
dimension: foo {
action: {
label: "Send a Thing"
url: "https://example.com/ping/\{{ value \}}"
form_url: "https://example.com/ping/\{{ value \}}/form.json"
}
}
El servidor debe mostrar una representación JSON de un formulario que coincida con LookML:
[
{
"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",
}
]
Si usas el parámetro form_param, las opciones se usan como parámetros de LookML. Por ejemplo:
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"
}
Considera usar el Centro de acciones de Looker
El parámetro action es una buena opción si aún no tienes un servidor configurado para recibir tus solicitudes de acción o si deseas implementar un caso de uso que tenga una reutilización limitada. Sin embargo, como alternativa, puedes considerar usar las acciones a nivel del campo que están disponibles en el Centro de acciones de Looker. (Asegúrate de que tu instancia cumpla con estos requisitos del Centro de acciones de Looker).
Además de las integraciones existentes del Centro de acciones de Looker, también puedes crear tu propia acción personalizada siguiendo las instrucciones de la página de documentación del Centro de acciones.