Vue d’ensemble des portails Web API

Notes

À compter du 12 octobre 2022, le portail Power Apps devient Power Pages. Plus d’informations : Microsoft Power Pages est maintenant généralement disponible (blog)
Nous allons bientôt migrer et fusionner la documentation des portails Power Apps avec la documentation de Power Pages.

L’API web des portails offre une expérience utilisateur plus riche dans les pages de portails Power Apps. Vous pouvez utiliser l’API Web pour effectuer des opérations de création, de lecture, de mise à jour et de suppression dans toutes les tables Microsoft Dataverse à partir de vos pages de portails. Par exemple, vous pouvez créer un compte, mettre à jour un contact ou modifier les autorisations de table pour un produit en utilisant l’API Web des portails au lieu de l’application Gestion des portails.

Notes

Vous pouvez également utiliser l’API Web des portails dans Power Pages. Plus d’informations : Qu’est-ce que Power Pages

Important

  • La version de votre portail doit être 9.3.3.x ou ultérieure pour que cette fonctionnalité soit opérationnelle.
  • L’API web des portails est conçue pour créer une expérience utilisateur riche dans les pages de portails. Elle n’est pas optimisée pour les services tiers ou l’intégration d’application. L’utilisation de l’API web des portails pour s’intégrer à d’autres sites de portails Power Apps n’est pas non plus prise en charge.
  • Les opérations de l’API Web des portails sont limitées aux tables liées aux données — par exemple, des comptes, des contacts ou vos tableaux personnalisés. Configuration des métadonnées de table ou des données de table de configuration de portail — par exemple, configurer des tables de portails telles que adx_contentsnippet, adx_entityform ou adx_entitylist — n’est pas pris en charge avec l’API Web des portails. Pour une liste complète, rendez-vous sur Tables de configuration non prises en charge, plus loin dans cette rubrique.
  • L’API Web des portails bénéficie de mise en cache côté serveur, les appels suivants à l’API Web sont donc plus rapides que les appels initiaux. Notez que la suppression du cache côté serveur du portail entraîne une dégradation temporaire des performances.
  • Les opérations de l’API Web des portails nécessitent une licence portails Power Apps. Par exemple, les appels d’API Web effectués par des utilisateurs anonymes sont comptabilisés dans la capacité d’affichage des pages. Les appels d’API Web effectués par des utilisateurs authentifiés (internes ou externes) ne sont pas comptabilisés dans les pages vues, mais nécessitent des licences applicables. Informations complémentaires : FAQ sur les licences Power Apps

Opérations de l’API Web

L’API web des portails offre un sous-ensemble de fonctionnalités pour les opérations Dataverse que vous pouvez effectuer en utilisant l’API Dataverse. Nous avons gardé le format de l’API aussi similaire que possible, pour réduire la courbe d’apprentissage.

Notes

Les opérations de l’API Web respectent la casse.

Opérations d’API Web disponibles dans les portails

Notes

L’utilisation de l’API web des portails pour appeler les actions et les fonctions n’est pas prise en charge.

Paramètres du site pour l’API web

Vous devez activer le paramètre du site pour activer l’API web des portails pour votre portail. Vous pouvez également configurer l’API Web au niveau du champ qui détermine les champs de table qui peuvent ou non être modifiés avec l’API Web des portails.

Notes

Utilisez le nom logique de la table pour ces paramètres (par exemple account).

Nom du paramètre du site Description
Webapi/<table name>/enabled Active ou désactive l’API web pour <table name>.
Par défaut : False
Valeurs valides : True, False
ApiWeb/<table name>/champs Définit la liste des attributs séparés par des virgules qui peuvent être modifiés avec l’API web.
Valeurs possibles :
- Tous les attributs : *
- Attributs spécifiques :attr1,attr2,attr3
Remarque : la valeur doit être soit un astérisque (*) soit une liste de noms de champs séparés par des virgules.
Important : ce paramètre de site est obligatoire. Si ce paramètre manque, l’erreur « Aucun champ défini pour cette entité » s’affiche.
Webapi/error/innererror Active ou désactive InnerError.
Par défaut : False
Valeurs valides : True, False
Webapi/<table name>/disableodatafilter Active ou désactive le filtre OData.
Par défaut : False
Valeurs valides : True, False voir Problèmes connus pour en savoir plus. Le paramétrage du site est disponible dans la version 9.4.10.74 ou ultérieure du portail.

Notes

Les paramètres du site doivent être définis sur Actif pour que les modifications prennent effet.

Par exemple, pour exposer l’API Web pour la table Incident où les utilisateurs authentifiés sont autorisés à effectuer des opérations de création, de mise à jour et de suppression sur cette entité, les paramètres du site sont indiqués dans le tableau suivant.

Nom du paramètre du site Valeur du paramètre du site
Webapi/incident/enabled vrai
Webapi/incident/fields attr1, attr2, attr3

Sécurité avec l’API web des portails

Vous pouvez configurer la sécurité basée sur les enregistrements pour des enregistrements individuels dans les portails en utilisant les autorisations de table. L’API Web des portails accède aux enregistrements de table et suit les autorisations de table accordées aux utilisateurs via les rôles Web associés.

Vous pouvez configurer les autorisations de colonne pour définir plus en détail les privilèges des colonnes individuelles d’une table au moment de l’utilisation de l’API Web des portails.

Sécurité de l’API web des portails.

Authentification des requêtes de l’API Web des portails

Vous n’avez pas besoin d’inclure un code d’authentification, car l’authentification et l’autorisation sont gérées par la session d’application. Tous les appels d’API web doivent inclure un jeton de falsification de requête intersites (CSRF).

Utiliser EntitySetName

Quand vous faites référence aux tables Dataverse à l’aide de l’API Web des portails dans votre code, vous devez utiliser EntitySetName, par exemple, pour accéder à la table account ; la syntaxe du code utilisera le EntitySetName accounts ;/_api/accounts().

Notes

Utilisez le nom logique de la table pour les paramètres du site (par exemple account).

Vous pouvez déterminer le nom EntitySetName de tables spécifiques en suivant ces étapes :

  1. Accéder à https://make.powerapps.com

  2. Sélectionnez l’onglet Dataverse dans le panneau latéral et sélectionnez la table.

  3. Sélectionnez ... (option Commandes), puis choisissez Avancé, Outils et Copier le nom de l’ensemble pour copier le EntitySetName de la table dans votre presse-papiers.

    Comment localiser EntitySetName d’une table Dataverse.

Règlement général sur la protection des données (RGPD)

Tous les en-têtes de demande auront un ID de contact transmis à des fins d’audit. Pour un utilisateur anonyme, il est transmis comme null.

Si la journalisation d’audit est activée, un utilisateur peut afficher tous les événements d’audit dans le journal d’audit Office 365.

Journal d’audit Office 365.

Pour plus d′informations :
Activer et utiliser la journalisation des activités
Exporter, configurer et afficher les enregistrements du journal d’audit

Tables de configuration non prises en charge

L’API Web des portails ne peut pas être utilisée pour les tables de configuration suivantes :

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

Problèmes connus

Les utilisateurs obtiendront une erreur CDS s’ils invoquent une demande de l’API Web GET pour les tables comportant plusieurs niveaux 1 à plusieurs ou plusieurs à plusieurs pour les autorisations de table avec une étendue parent définie.

Pour résoudre ce problème, la solution recommandée consiste à utiliser FetchXML dans la requête OData.

Vous pouvez également définir le paramètre du site Webapi/<table name>/disableodatafilter sur True.

Important

Si vous remplacez le paramètre du site Webapi/<table name>/disableodatafilter par True cela peut entraîner un ralentissement des performances des appels GET de l’API Web.

Le paramétrage du site est disponible dans la version 9.4.10.74 ou ultérieure du portail.

Étape suivante

Interroger les données à l’aide de l’API web des portails

Voir aussi

Composer des demandes HTTP et traiter les erreurs
Opérations d’écriture, de mise à jour et de suppression à l’aide de l’API Web
Didacticiel : Utiliser l’API web des portails

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).