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

Nota

No se admite la llamada a acciones y funciones con la API web de los portales.

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.

Seguridad con portales API web.

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:

  1. Vaya a https://make.powerapps.com

  2. Seleccione la pestaña Dataverse del panel lateral y seleccione la tabla.

  3. Seleccione ... (opción Comandos) y luego elija Avanzado, Instrumentos y Copiar el nombre del conjunto para copiar el EntitySetName de la tabla al portapapeles.

    Cómo localizar EntitySetName de una tabla de Dataverse.

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.

Registro de auditoría 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).