Información general de API web de portales
Nota
A partir del 12 de octubre de 2022, los portales de Power Apps son Power Pages. Más información: Microsoft Power Pages ya está disponible para el público en general (blog)
Pronto migraremos y fusionaremos la documentación de los portales de Power Apps con la documentación de Power Pages.
La API web del portal permite una experiencia de usuario más rica en el interior de las páginas de los portales de Power Apps. Puede utilizar la API web para realizar las operaciones de crear, leer, actualizar y eliminar en todas las tablas de Microsoft Dataverse de las páginas de sus portales. Por ejemplo, puede crear una nueva cuenta, actualizar un contacto o cambiar los permisos de tabla para un producto utilizando la API web de portales en lugar de la aplicación Portal Management.
Nota
También puede usar la web API de portales en Power Pages. Más información: Qué es Power Pages
Importante
- La versión de su portal debe ser 9.3.3.x o posterior para que esta función funcione.
- La API web de los portales se ha diseñado para crear una experiencia de usuario rica en páginas de portales. No está optimizado para servicios de terceros o integración de aplicaciones. Uso de la API web de los portales para integrarse con otros sitios de portales de Power Apps tampoco son compatibles.
- Las operaciones de la API web de los portales se limitan a tablas relacionadas con los datos.—por ejemplo, cuentas, contactos o sus tablas personalizadas. Configurar metadatos de la tabla o datos de la tabla de configuración del portal—por ejemplo, configurar tablas de portales como adx_contentsnippet, adx_entityform o adx_entitylist—no es compatible con la API web de portales. Para obtener una lista completa, vaya a tablas de configuración no admitidas, más adelante en este tema.
- La API web de los portales se beneficia del almacenamiento en caché del lado del servidor, por lo que las llamadas posteriores a la API web son más rápidas que las llamadas iniciales. Tenga en cuenta que borrar la memoria caché del lado del servidor del portal provoca una degradación temporal del rendimiento.
- Las operaciones de la API web de los portales requieren una licencia de portales de Power Apps. Por ejemplo, las llamadas a la API web realizadas por usuarios anónimos se cuentan para la capacidad de visualización de páginas. Las llamadas a la API web realizadas por usuarios autenticados (internos o externos) no se cuentan para las visitas a la página, pero requieren las licencias correspondientes. Más información: Preguntas frecuentes sobre las licencias de portales de Power Apps
Operaciones de API web
La API web de portales ofrece un subconjunto de capacidades para operaciones de Dataverse que puede realizar mediante la API de Dataverse. Hemos mantenido el formato de API lo más similar posible para reducir la curva de aprendizaje.
Nota
Las operaciones de API web distinguen entre mayúsculas y minúsculas.
Operaciones de API web disponibles en portales
- Leer registros de una tabla
- Crear un registro en una tabla
- Actualizar y eliminar registros en una tabla
- Asociar y desasociar tablas
Configuración del sitio para la API web
Debe habilitar la configuración del sitio para habilitar la API web de portales para su portal. También puede configurar la API web a nivel de campo que determina los campos de la tabla que se pueden modificar o no con la API web de portales.
Nota
Use la tabla nombre lógico para esta configuracion (por ejemplo cuenta).
Nombre de configuración del sitio | Description |
---|---|
Webapi/<table name>/enabled | Habilita o deshabilita la API web para <table name>. Predeterminado: False Valores válidos: True , False |
Webapi/<table name>/fields | Define la lista de atributos separados por comas que se pueden modificar con la API web. Valores posibles: - Todos los atributos: * - Atributos específicos: attr1,attr2,attr3 Nota: El valor debe ser un asterisco (*) o una lista de nombres de campo separados por comas. Importante: Esta es una configuración de sitio obligatoria. Cuando falta esta configuración, verá el error "No hay campos definidos para esta entidad". |
Webapi/error/innererror | Habilita o deshabilita InnerError. Predeterminado: False Valores válidos: True , False |
Webapi/<table name>/disableodatafilter | Habilita o deshabilita el filtro OData. Predeterminado: False Valores válidos: True , False Consulte Problemas conocidos para más información. La configuración del sitio está disponible en la versión del portal 9.4.10.74 o posterior. |
Nota
La configuración del sitio debe establecerse en Activo para que los cambios surtan efecto.
Por ejemplo, para exponer la API web para la tabla de casos donde los usuarios autenticados pueden realizar operaciones de creación, actualización y eliminación en esta entidad, la configuración del sitio se muestra en la siguiente tabla.
Nombre de configuración del sitio | Valor de configuración del sitio |
---|---|
Webapi/incident/enabled | true |
Webapi/incident/fields | attr1, attr2, attr3 |
Seguridad con la API web de los portales
Puede configurar la seguridad basada en registros para registros individuales en portales utilizando permisos de tabla. La API web de los portales accede a los registros de la tabla (entidad) y sigue los permisos de la tabla otorgados a los usuarios a través de los roles web asociados.
Puede configurar permisos de columna para definir aún más los privilegios de las columnas individuales de una tabla mientras usa la API web de portales.
Autenticación de solicitudes de API web de portales
No es necesario que incluya un código de autenticación, porque la autenticación y la autorización son administradas por la sesión de la aplicación. Todas las llamadas a la API web deben incluir un token de falsificación de solicitud entre sitios (CSRF).
Uso de EntitySetName
Al referirse a las tablas de Dataverse usando la API web del portal en su código, necesita usar EntitySetName, por ejemplo, para acceder a la tabla cuenta, la sintaxis del código utilizará el EntitySetName de cuentas; /_api/accounts()
.
Nota
Use la tabla de nombre lógico para esta configuracion del sitio (por ejemplo cuenta).
Puede determinar el EntitySetName de tablas específicas siguiendo estos pasos:
Vaya a https://make.powerapps.com
Seleccione la pestaña Dataverse del panel lateral y seleccione la tabla.
Seleccione ... (opción Comandos) y luego elija Avanzado, Instrumentos y Copiar el nombre del conjunto para copiar el EntitySetName de la tabla al portapapeles.
Reglamento General de Protección de Datos (RGPD)
Todos los encabezados de solicitud tendrán un Id. de contacto para fines de auditoría. Para un usuario anónimo, esto se pasará como null
.
Si el registro de auditoría está habilitado, un usuario puede ver todos los eventos de auditoría en el registro de auditoría de Office 365.
Más información:
Habilitar y utilizar registro de actividad
Exportar, configurar y ver registros de auditoría
Tablas de configuración no admitidas
La API web de Portals no se puede utilizar para las siguientes tablas de configuración:
adx_contentaccesslevel
adx_contentsnippet
adx_entityform
adx_entityformmetadata
adx_entitylist
adx_entitypermission
adx_entitypermission_webrole
adx_externalidentity
adx_pagealert
adx_pagenotification
adx_pagetag
adx_pagetag_webpage
adx_pagetemplate
adx_portallanguage
adx_publishingstate
adx_publishingstatetransitionrule
adx_publishingstatetransitionrule_webrole
adx_redirect
adx_setting
adx_shortcut
adx_sitemarker
adx_sitesetting
adx_urlhistory
adx_webfile
adx_webfilelog
adx_webform
adx_webformmetadata
adx_webformsession
adx_webformstep
adx_weblink
adx_weblinkset
adx_webnotificationentity
adx_webnotificationurl
adx_webpage
adx_webpage_tag
adx_webpageaccesscontrolrule
adx_webpageaccesscontrolrule_webrole
adx_webpagehistory
adx_webpagelog
adx_webrole_systemuser
adx_website
adx_website_list
adx_website_sponsor
adx_websiteaccess
adx_websiteaccess_webrole
adx_websitebinding
adx_websitelanguage
adx_webtemplate
Problemas conocidos
Los usuarios obtendrán un error de CDS si invocan una solicitud de la API Web GET
para tablas que tienen varios niveles de 1 a varios o varios a varios permisos de la tabla con el ámbito principal definido.
Para resolver este problema, la solución recomendada es utilizar FetchXML en la consulta de OData.
Alternativamente, establezca la configuración del sitio Webapi/<table name>/disableodatafilter en True
.
Importante
Cambiar la configuración del sitio Webapi/<table name>/disableodatafilter a True
puede provocar un rendimiento más lento para las llamadas de la API Web GET
.
La configuración del sitio está disponible en la versión del portal 9.4.10.74 o posterior.
Siguiente paso
Consultar datos utilizando la API web de portales
Consulte también
Componer solicitudes HTTP y administrar errores
Operaciones de escritura, actualización y eliminación de portales con la API web
Tutorial: Uso del API web del portal
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).