¿Tu flujo de Power Automate deja de funcionar justo cuando intentas leer una lista de SharePoint y aparece el mensaje “The required field ‘Client’ data type is not supported”? A continuación encontrarás una guía completa —causas, diagnóstico y solución paso a paso— para que vuelvas a poner en marcha tu automatización sin tocar código.
Descripción del error
Al agregar la acción GetTable
(o Get items
) del conector SharePoint Online, Power Automate intenta generar las «salidas dinámicas» que permitirán arrastrar campos al resto del flujo. Si una de las columnas obligatorias de la lista (en este caso, Client
) usa un tipo de dato no admitido, el conector responde con un HTTP 400 BadRequest
y muestra:
Failed to retrieve dynamic outputs.
status: 400
message: "The required field 'Client' data type is not supported"
Por qué ocurre
Power Automate (antes Microsoft Flow) necesita convertir cada columna de SharePoint a un tipo JSON que conozca. Algunos tipos avanzados—Person/Group multivalor, Lookup complejo, Choice múltiple, columna calculada, Managed Metadata, Hyperlink con descripción, etc.—no se pueden materializar con el conector estándar. Si además la columna está marcada como «Required», el motor de Power Automate no puede omitirla y la acción falla.
Columnas que provocan incompatibilidad
- Person or Group con opción «Allow multiple selections» activada.
- Lookup que devuelva más de una columna origen, o que admita varios valores.
- Choice en modo «Checkboxes» (selección múltiple).
- Calculated con resultado «string» que concatene otros campos.
- Managed Metadata (Taxonomía) que acepte varios términos.
- Hyperlink or Picture con formato «Descripción+URL».
Cómo diagnosticar el problema
- Abre la lista afectada en SharePoint y entra en Settings → List settings → Columns.
- Localiza
Client
(u otra columna nombrada en el mensaje) y revisa:- Tipo de columna.
- Si está marcada como Required.
- Si permite Multiple values.
- Examina el esquema con
Send an HTTP request to SharePoint
(métodoGET _api/web/lists/getbytitle('TuLista')/Fields?$select=Title,TypeAsString,Required,AllowMultipleValues
) para confirmar los metadatos exactos.
Procedimiento paso a paso para solucionarlo
Paso | Acción | Detalle |
---|---|---|
1 | Revisar tipo de columna en SharePoint | Ve a Configuración de la lista → Columnas y localiza Client . |
2 | Cambiar a un tipo compatible | Ejemplos: • Person/Group → un solo valor. • Lookup → máximo un valor o transformar en Single line of text. • Choice → modo desplegable. • Evitar Calculated o Managed Metadata mientras dure la prueba. |
3 | Desmarcar “Required” temporalmente | Haz la columna opcional; Power Automate ignorará su ausencia y cargará el esquema. |
4 | Actualizar conexiones | Vuelve al flujo, edita la acción GetTable /Get items y pulsa Actualizar conexión o elimínala y añádela de nuevo para forzar la detección del nuevo esquema. |
5 | Filtrar columnas (alternativa) | Si no puedes tocar la lista, usa una llamada HTTP (_api/web/lists…/items?$select=col1,col2 ) o un Select posterior para eliminar Client del payload. |
6 | Consultar la comunidad | Publica la definición exacta de la columna en la Power Automate Community si persisten dudas sobre tipos avanzados. |
Alternativas cuando la columna no se puede modificar
No siempre somos dueños del esquema de la lista. Cuando el equipo de gobernanza te impide cambiar tipos de dato, tienes tres caminos:
- Llamada HTTP cruda: Aprovecha el conector «Send an HTTP request to SharePoint» para leer solo los campos compatibles. El resultado llegará como JSON plano y podrás mapearlo con la acción
Parse JSON
. - Crear una vista intermedia: Genera una lista secundaria (o Excel en OneDrive) con columnas simples y cópiale la información mediante un flujo de actualización nocturna. Así mantienes la lista original intacta.
- Azure Function / Logic Apps: Si necesitas deserializar tipos complejos (por ejemplo, TermStore), una función de Azure en C# puede leerlos y exponer un API simplificado para Power Automate.
Buenas prácticas para prevenir errores futuros
- Prototipa con columnas simples (texto, número, fecha) y añade los tipos avanzados solo después de validar el flujo.
- Etiqueta las columnas críticas con un prefijo («sys», «pa») y documenta su finalidad en la descripción.
- Evita columnas calculadas cuando necesites exponer datos a Power Automate; usa fórmulas dentro del flujo.
- Añade pruebas automáticas que verifiquen la respuesta del conector (acción
Scope
+Configure run after
en caso de fallo) para recibir alertas antes de que el usuario final note el error. - Revisa los cambios de esquema al menos una vez por trimestre o cuando se publiquen nuevas funcionalidades en SharePoint Online.
Preguntas frecuentes
¿Puedo seguir usando una columna Person/Group múltiple si no es necesaria para el flujo?
Sí. Basta con que la marques como Optional. Al no ser requerida, Power Automate la ignorará durante la generación de las salidas dinámicas.
¿Existe un límite de columnas complejas que el conector pueda saltarse?
No hay un número oficial, pero los mejores resultados se obtienen cuando todas las columnas necesarias para la lógica del flujo son compatibles. Aun así, Managed Metadata o Lookup multivalor que no estén marcadas como «Required» no bloquearán la acción.
¿Cambiar el tipo de dato borra la información existente?
Solo si migras a un tipo incompatible (p. ej., de Person a Texto). SharePoint pedirá confirmación, y la conversión puede perder datos. Haz una copia de la lista antes de modificar columnas en producción.
Conclusión
El error «The required field ‘Client’ data type is not supported» se debe casi siempre a un mismatch entre los tipos de columna de SharePoint y los tipos JSON que entiende Power Automate. Identificar la columna conflictiva, convertirla a un tipo sencillo o hacerla opcional soluciona el problema en minutos. Si no puedes tocar el esquema, hay rutas alternativas—consultas HTTP, vistas intermedias o funciones externas—que aíslan la complejidad sin sacrificar la automatización.
Siguiendo las buenas prácticas expuestas (prototipar con columnas simples, vigilar cambios de esquema y añadir pruebas de regresión) podrás evitar que errores similares interrumpan tus procesos en el futuro.