Qu’est-ce que les API REST pour Reporting Services ?
S’applique à : SQL Server Reporting Services (2017 et ultérieur) ❌ Power BI Report Server
Microsoft SQL Server 2017 Reporting Services prend en charge les API REST (Representational State Transfer). Les API REST sont des points de terminaison de service qui prennent en charge un ensemble d’opérations HTTP (méthodes). Ces méthodes fournissent un accès de création, de récupération, de mise à jour ou de suppression aux ressources dans un serveur de rapports.
Une API REST fournit un accès par programmation aux objets d'un catalogue de serveur de rapports SQL Server 2017 Reporting Services. Voici quelques exemples d’objets :
- Dossiers
- Rapports
- Indicateurs de performance clés
- Sources de données
- Groupes de données
- Plans d’actualisation
- Abonnements
Lorsque vous utilisez une API REST, vous pouvez parcourir l’arborescence des dossiers, découvrir le contenu d’un dossier ou télécharger une définition de rapport. Vous pouvez également créer, mettre à jour et supprimer des objets.
Remarque
Si vous voulez voir ou supprimer des données personnelles, consultez les conseils de Microsoft sur le site Demandes des personnes concernées pour Windows concernant le RGPD. Si vous recherchez des informations générales sur le RGPD, consultez la section RGPD du portail d'approbation de services.
Composants d'une demande/réponse d'API REST
Une paire demande/réponse d'API REST peut être divisée en cinq composants :
L’URI de requête :
- Bien que l’URI de demande soit inclus dans l'en-tête de message de la demande, la plupart des langages ou des frameworks vous obligent à le transmettre séparément du message de demande.
- Se compose des éléments suivants
{URI-scheme} :// {URI-host} / {resource-path} ? {query-string}
.
URI de requête Description Schéma d’URI Indique le protocole utilisé pour transmettre la demande. Par exemple, http
ouhttps
.Hôte d’URI Spécifie le nom de domaine ou l’adresse IP du serveur où le point de terminaison du service REST est hébergé, comme myserver.contoso.com
.Resource path Spécifie la ressource ou la collection de ressources, qui peut inclure plusieurs segments utilisés par le service pour déterminer la sélection de ces ressources. Par exemple, vous pouvez utiliser CatalogItems(01234567-89ab-cdef-0123-456789abcdef)/Properties
pour obtenir les propriétés spécifiées pour leCatalogItem
.Chaîne de requête (facultatif) Fournit des paramètres simples supplémentaires, comme la version de l’API ou les critères de sélection des ressources. Champs d’en-tête de message de requête HTTP :
- Une méthode HTTP requise, également appelée opération ou verbe.
- Indique au service quel type d’opération vous demandez. Les API REST Reporting Services prennent en charge les méthodes DELETE, GET, HEAD, PUT, POST et PATCH.
- Des champs d'en-tête supplémentaires facultatifs, suivant l'URI et la méthode HTTP spécifiés.
Champs du corps du message de demande HTTP facultatifs :
- Prend en charge l’URI et l’opération HTTP. Par exemple, les opérations POST contiennent des objets codés au format Extensions multifonctions du courrier Internet (MIME) qui sont passés comme paramètres complexes.
- Pour les opérations POST ou PUT, le type de codage MIME pour le corps doit être spécifié dans l'en-tête de demande
Content-type
. Certains services vous obligent à utiliser un type MIME spécifique, tel queapplication/json
.
Champs d'en-tête du message de réponse HTTP :
- Un code d'état HTTP, compris entre 2xx (opérations réussies) et 4xx ou 5xx (erreur). Ou bien un code d'état défini par le service pourrait être retourné, comme indiqué dans la documentation de l'API.
- Des champs d'en-tête supplémentaires facultatifs, nécessaires à la prise en charge de la réponse de la demande, tels qu'un en-tête de réponse
Content-type
.
Champs du corps du message de réponse HTTP facultatifs :
- Les objets de réponse codés au format MIME sont retournés dans le corps de la réponse HTTP, par exemple une réponse à partir d'une méthode GET qui retourne des données. En règle générale, ces objets sont retournés dans un format structuré tel que JSON ou XML, comme indiqué par l'en-tête de réponse
Content-type
.
- Les objets de réponse codés au format MIME sont retournés dans le corps de la réponse HTTP, par exemple une réponse à partir d'une méthode GET qui retourne des données. En règle générale, ces objets sont retournés dans un format structuré tel que JSON ou XML, comme indiqué par l'en-tête de réponse
Documentation de l'API
Une API REST moderne exige une documentation d'API moderne. Une API REST est basée sur la spécification OpenAPI, également appelée spécification swagger. La documentation de l’API REST power BI Report Server est disponible sur Microsoft Learn.
Appels d'API test
Si vous avez besoin d’un outil pour tester vos messages de demande/réponse HTTP, Fiddler est un proxy de débogage web gratuit capable d'intercepter vos demandes REST, facilitant ainsi le diagnostic des messages de demande/réponse HTTP.