Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce diagramme illustre le modèle d’appel d’API utilisé pour créer un modèle de rapport, planifier le rapport personnalisé et récupérer les données d’échec.
Figure 1 : Flux de haut niveau du modèle d’appel d’API
Cette liste fournit plus de détails sur la figure 1.
- L’application cliente peut définir le schéma/modèle de rapport personnalisé en appelant l’API Créer une requête de rapport. Vous pouvez également utiliser un modèle de rapport (
QueryId) à partir de la liste des requêtes système. - En cas de réussite, l’API Créer un modèle de rapport renvoie le
QueryIdfichier . - L’application cliente appelle ensuite l’API Créer un rapport à l’aide de la date de début du rapport, de l’intervalle de répétition, de
QueryIDla récurrence et d’un URI de rappel facultatif. - En cas de réussite, l’API de création de rapport renvoie le
ReportIDfichier . - L’application cliente est avertie au niveau de l’URI de rappel dès que les données du rapport sont prêtes à être téléchargées.
- L’application cliente utilise ensuite l’API Obtenir les exécutions de rapport pour interroger l’état du rapport avec la
Report IDplage de dates et . - En cas de succès, le lien de téléchargement du rapport est renvoyé et l’application peut lancer le téléchargement des données.
Spécification du langage de requête de rapport
Bien que nous fournissions des requêtes système que vous pouvez utiliser pour créer des rapports, vous pouvez également créer vos propres requêtes en fonction des besoins de votre entreprise. Pour en savoir plus sur les requêtes personnalisées, consultez Spécification des requêtes personnalisées.
Créer une API de requête de rapport
Cette API permet de créer des requêtes personnalisées qui définissent l’ensemble de données à partir duquel les colonnes et les métriques doivent être exportées. L’API offre la possibilité de créer un nouveau modèle de rapport en fonction des besoins de votre entreprise.
Vous pouvez également utiliser les requêtes système que nous fournissons. Lorsque les modèles de rapport personnalisés ne sont pas nécessaires, vous pouvez appeler l’API Créer un rapport directement à l’aide des QueryIds des requêtes système que nous fournissons.
L’exemple suivant montre comment créer une requête personnalisée pour obtenir l’utilisation normalisée et les frais financiers estimés pour les références SKU PAID à partir de l’ensemble de données ISVUsage pour le dernier mois.
Syntaxe de la requête
| Méthode | URI de la requête |
|---|---|
| PUBLIER | https://api.partnercenter.microsoft.com/insights/v1.1/cmp/ScheduledQueries |
En-tête de requête
| En-tête de page | Catégorie | Descriptif |
|---|---|---|
| Autorisation | ficelle | Obligatoire. Le jeton d’accès Microsoft Entra. Le format est Bearer <token>. |
| Type de contenu | string |
application/JSON |
Paramètre de chemin
Aucun
Paramètre de requête
Aucun
Exemple de charge utile de demande
{
"Name": "ISVUsageQuery",
"Description": "Normalized Usage and Estimated Financial Charges for PAID SKUs",
"Query": "SELECT UsageDate, NormalizedUsage, EstimatedExtendedChargePC FROM ISVUsage WHERE SKUBillingType = 'Paid' ORDER BY UsageDate DESC TIMESPAN LAST_MONTH"
}
Glossaire
Ce tableau fournit les principales définitions des éléments de la charge utile de la demande.
| Paramètre | Obligatoire | Descriptif | Valeurs autorisées |
|---|---|---|---|
Name |
Oui | Nom convivial de la requête | ficelle |
Description |
Non | Description de la requête créée | ficelle |
Query |
Oui | Chaîne de requête basée sur les besoins de l’entreprise | ficelle |
Remarque
Pour obtenir des exemples de requêtes personnalisées, consultez Exemples de requêtes.
Exemple de réponse
La charge utile de réponse est structurée comme suit :
Codes de réponse : 200, 400, 401, 403, 500
Exemple de charge utile de réponse :
{
"value": [
{
"queryId": "78be43f2-e35f-491a-8cd5-78fe14194f9c",
"name": " ISVUsageQuery",
"description": "Normalized Usage and Estimated Financial Charges for PAID SKUs",
"query": " SELECT UsageDate, NormalizedUsage, EstimatedExtendedChargePC FROM ISVUsage WHERE SKUBillingType = 'Paid' ORDER BY UsageDate DESC TIMESPAN LAST_MONTH",
"type": "userDefined",
"user": "142344300",
"createdTime": "2024-01-06T05:38:34Z"
}
],
"totalCount": 1,
"message": "Query created successfully",
"statusCode": 200
}
Glossaire
Ce tableau fournit les principales définitions des éléments de la réponse.
| Paramètre | Descriptif |
|---|---|
QueryId |
Identificateur unique universel (UUID) de la requête créée |
Name |
Nom fourni dans la charge utile de la requête lors de la création de la requête |
Description |
Description fournie dans la charge utile de la requête lors de la création de la requête |
Query |
Requête de rapport personnalisé fournie dans la charge utile de la demande lors de la création de la requête |
Type |
Définir sur userDefined pour les requêtes créées manuellement |
User |
ID utilisateur utilisé pour créer la requête |
CreatedTime |
UTC Heure de création de la requête. Format : aaaa-MM-jjTHH :mm :ssZ |
TotalCount |
Nombre d’enregistrements dans le tableau Value |
StatusCode |
Code de résultat Les valeurs possibles sont 200, 400, 401, 403, 500 |
message |
Message d’état de l’exécution de l’API |
Créer une API de rapport
Une fois que vous avez réussi à créer un modèle de rapport personnalisé et que vous avez reçu la réponse dans le cadre de la QueryID création d’une requête de rapport , cette API peut être appelée pour planifier l’exécution d’une requête à intervalles réguliers. Vous pouvez définir une fréquence et un calendrier pour la remise du rapport. Pour les requêtes système que nous fournissons, l’API Create Report peut également être appelée avec QueryId.
Syntaxe de la requête
| Méthode | URI de la requête |
|---|---|
| PUBLIER | https://api.partnercenter.microsoft.com/insights/v1.1/cmp/ScheduledReport |
En-tête de requête
| En-tête de page | Catégorie | Descriptif |
|---|---|---|
| Autorisation | ficelle | Obligatoire. Le jeton d’accès Microsoft Entra. Le format est Bearer <token>. |
| Type de contenu | ficelle | application/JSON |
Paramètre de chemin
Aucun
Paramètre de requête
Aucun
Exemple de charge utile de demande
{
"ReportName": "ISVUsageReport",
"Description": "Normalized Usage and Estimated Financial Charges for PAID SKUs",
"QueryId": "78be43f2-e35f-491a-8cd5-78fe14194f9c ",
"StartTime": "2021-01-06T19:00:00Z ",
"executeNow": false,
"RecurrenceInterval": 48,
"RecurrenceCount": 20,
"Format": "csv",
"CallbackUrl": "https://<SampleCallbackUrl>"
"callbackMethod": "GET",
}
Glossaire
Ce tableau fournit les principales définitions des éléments de la charge utile de la demande.
| Paramètre | Obligatoire | Descriptif | Valeurs autorisées |
|---|---|---|---|
ReportName |
Oui | Nom convivial attribué au rapport | Chaîne |
Description |
Non | Description du rapport créé | Chaîne |
QueryId |
Oui | ID de requête à utiliser pour la génération de rapports | Chaîne |
StartTime |
Oui | UTC Horodatage à partir duquel la génération du rapport commencera. Le format doit être aaaa-MM-jjTHH :mm :ssZ | Chaîne |
ExecuteNow |
Non | Ce paramètre doit être utilisé pour créer un rapport qui n’est exécuté qu’une seule fois.
StartTime, RecurrenceInterval, RecurrenceCountet EndTime sont ignorés si cette valeur est définie sur true |
Booléen |
QueryStartTime |
Non | Spécifie éventuellement l’heure de début de la requête d’extraction des données. Ce paramètre ne s’applique qu’à un seul rapport d’exécution de temps qui a ExecuteNow la valeur .true Le format doit être aaaa-MM-jjTHH :mm :ssZ |
Horodatage sous forme de chaîne |
QueryEndTime |
Non | Spécifie éventuellement l’heure de fin de la requête d’extraction des données. Ce paramètre ne s’applique qu’à un seul rapport d’exécution de temps qui a ExecuteNow la valeur .true Le format doit être aaaa-MM-jjTHH :mm :ssZ |
Horodatage sous forme de chaîne |
RecurrenceInterval |
Oui | Fréquence en heures à laquelle le rapport doit être généré. La valeur minimale est 1 et la valeur maximale est 17520 | Nombre entier |
RecurrenceCount |
Oui | Nombre de rapports à générer. La limite dépend de l’intervalle de récurrence | Nombre entier |
Format |
Non | Format de fichier du fichier exporté. Le format par défaut est CSV | CSV/TSV |
CallbackUrl |
Non | URL accessible au public qui peut être configurée en tant que destination de rappel | Chaîne |
CallbackMethod |
Non | Méthode Get/Post qui peut être configurée avec l’URL de rappel | OBTENIR/PUBLIER |
EndTime |
Oui | Horodatage UTC à partir duquel la génération du rapport se terminera. Le format doit être aaaa-MM-jjTHH :mm :ssZ | Chaîne |
Remarque
Lors de la création du rapport, l’une ou l’autre EndTime ou une combinaison de RecurrenceInterval et RecurrenceCount est obligatoire.
Exemple de réponse
La charge utile de réponse est structurée comme suit :
Code de réponse : 200, 400, 401, 403, 404, 500
Charge utile de réponse :
{
"Value": [
{
"reportId": "72fa95ab-35f5-4d44-a1ee-503abbc88003",
"reportName": "ISVUsageReport",
"description": "Normalized Usage and Estimated Financial Charges for PAID SKUs",
"queryId": "78be43f2-e35f-491a-8cd5-78fe14194f9c",
"query": "SELECT UsageDate, NormalizedUsage, EstimatedExtendedChargePC FROM ISVUsage WHERE SKUBillingType = 'Paid' ORDER BY UsageDate DESC TIMESPAN LAST_MONTH",
"user": "142344300",
"createdTime": "2024-01-06T05:46:00Z",
"modifiedTime": null,
"startTime": "2024-01-06T19:00:00Z",
"reportStatus": "Active",
"recurrenceInterval": 48,
"recurrenceCount": 20,
"callbackUrl": "https://<SampleCallbackUrl>",
"callbackMethod": "GET",
"format": "csv"
}
],
"TotalCount": 1,
"Message": "Report created successfully",
"StatusCode": 200
}
Glossaire
Ce tableau fournit les principales définitions des éléments de la réponse.
| Paramètre | Descriptif |
|---|---|
ReportId |
Identificateur unique universel (UUID) du rapport que vous avez créé |
ReportName |
Nom fourni dans la charge utile de la demande lors de la création du rapport |
Description |
Description fournie dans la charge utile de la demande lors de la création du rapport |
QueryId |
ID de requête fourni dans la charge utile de la demande lors de la création du rapport |
Query |
Texte de requête qui sera exécuté pour ce rapport |
User |
ID utilisateur utilisé pour créer le rapport |
CreatedTime |
Heure UTC à laquelle le rapport a été créé au format suivant : aaaa-MM-jjTHH :mm :ssZ |
ModifiedTime |
UTC Heure à laquelle le rapport a été modifié pour la dernière fois au format suivant : aaaa-MM-jjTHH :mm :ssZ |
ExecuteNow |
Paramètre ExecuteNow fourni dans la charge utile de la demande lors de la création du rapport |
queryStartTime |
Heure de début de la requête fournie dans la charge utile de la demande lors de la création du rapport. Cela ne s’applique que si ExecuteNow est défini sur « True » |
queryEndTime |
Heure de fin de la requête fournie dans la charge utile de la demande lors de la création du rapport. Cela ne s’applique que si ExecuteNow est défini sur « True » |
StartTime |
Heure de début fournie dans la charge utile de la demande lors de la création du rapport |
ReportStatus |
État de l’exécution du rapport. Les valeurs possibles sont Pause, Actif et Inactif. |
RecurrenceInterval |
Intervalle de récurrence fourni dans la charge utile de la demande lors de la création du rapport |
RecurrenceCount |
Nombre de récurrences restantes pour le rapport |
CallbackUrl |
URL de rappel fournie dans la charge utile de la demande lors de la création du rapport |
CallbackMethod |
Méthode de rappel fournie dans la charge utile de la demande lors de la création du rapport |
Format |
Format des fichiers de rapport fournis dans la charge utile de la demande lors de la création du rapport |
EndTime |
Heure de fin fournie dans la charge utile de la demande lors de la création du rapport. Cela ne s’applique que si ExecuteNow est défini sur « True » |
TotalRecurrenceCount |
RecurrenceCount fourni dans la charge utile de la demande lors de la création du rapport |
nextExecutionStartTime |
Horodatage UTC du début de l’exécution du prochain rapport |
TotalCount |
Nombre d’enregistrements dans le tableau Value |
StatusCode |
Code de résultat. Les valeurs possibles sont 200, 400, 401, 403, 500 |
message |
Message d’état de l’exécution de l’API |
Obtenir l’API d’exécution de rapports
Vous pouvez utiliser cette méthode pour interroger l’état de l’exécution d’un rapport à l’aide de l’API ReportIdde création de rapport. La méthode renvoie le lien de téléchargement du rapport si celui-ci est prêt à être téléchargé. Sinon, la méthode renvoie l’état. Vous pouvez également utiliser cette API pour obtenir toutes les exécutions qui ont eu lieu pour un rapport donné.
Important
Cette API a des paramètres de requête par défaut définis pour executionStatus=Completed et getLatestExecution=true. Par conséquent, l’appel de l’API avant la première exécution réussie du rapport renverra 404. Les exécutions en attente peuvent être obtenues en définissant executionStatus=Pending.
Syntaxe de la requête
| Méthode | URI de la requête |
|---|---|
| Obtenir | https://api.partnercenter.microsoft.com/insights/v1.1/cmp/ScheduledReport/execution/{reportId}?executionId={executionId}&executionStatus={executionStatus}&getLatestExecution={getLatestExecution} |
En-tête de requête
| En-tête de page | Catégorie | Descriptif |
|---|---|---|
| Autorisation | ficelle | Obligatoire. Le jeton d’accès Microsoft Entra. Le format est Bearer <token>. |
| Type de contenu | ficelle | application/json |
Paramètre de chemin
Aucun
Paramètre de requête
| Nom du paramètre | Obligatoire | Catégorie | Descriptif |
|---|---|---|---|
reportId |
Oui | ficelle | Filtrez pour obtenir les détails d’exécution des rapports reportId donnés uniquement dans cet argument. |
executionId |
Non | ficelle | Filtrez pour obtenir les détails des rapports executionId donnés dans cet argument. Plusieurs executionIds peuvent être spécifiés en les séparant par un point-virgule « ; ». |
executionStatus |
Non | chaîne/énumération | Filtrez pour obtenir les détails des rapports executionStatus donnés dans cet argument.Les valeurs valides sont : Pending, Running, Pausedet Completed La valeur par défaut est Completed. |
getLatestExecution |
Non | booléen | L’API renverra les détails de la dernière exécution du rapport. Par défaut, ce paramètre a la valeur true. Si vous choisissez de transmettre la valeur de ce paramètre sous la forme false, l’API renverra les instances d’exécution des 90 derniers jours. |
Charge utile de demande
Aucun
Exemple de réponse
La charge utile de réponse est structurée comme suit :
Codes de réponse : 200, 400, 401, 403, 404, 500
Exemple de charge utile de réponse :
{
"value": [
{
"executionId": "a0bd78ad-1a05-40fa-8847-8968b718d00f",
"reportId": "72fa95ab-35f5-4d44-a1ee-503abbc88003",
"recurrenceInterval": 4,
"recurrenceCount": 10,
"callbackUrl": null,
"format": "csv",
"executionStatus": "Completed",
"reportAccessSecureLink": "https://<path to report for download>",
"reportExpiryTime": null,
"reportGeneratedTime": "2021-01-13T14:40:46Z"
}
],
"totalCount": 1,
"message": null,
"statusCode": 200
}
Une fois l’exécution du rapport terminée, l’état Completed d’exécution s’affiche. Vous pouvez télécharger le rapport en sélectionnant l’URL dans le fichier reportAccessSecureLink.
Glossaire
Définitions clés des éléments de la réponse.
| Paramètre | Descriptif |
|---|---|
ExecutionId |
Identificateur unique universel (UUID) de l’instance d’exécution |
ReportId |
ID de rapport associé à l’instance d’exécution |
RecurrenceInterval |
Intervalle de périodicité fourni lors de la création du rapport |
RecurrenceCount |
Nombre de périodicités fournies lors de la création du rapport |
CallbackUrl |
URL de rappel associée à l’instance d’exécution |
CallbackMethod |
Méthode de rappel fournie dans la charge utile de la demande lors de la création du rapport |
Format |
Format du fichier généré en fin d’exécution |
ExecutionStatus |
Statut de l’instance d’exécution du rapport. Les valeurs valides sont : Pending, Running, Pausedet Completed |
ReportLocation |
Emplacement où le rapport est téléchargé. |
ReportAccessSecureLink |
Lien permettant d’accéder au rapport en toute sécurité |
ReportExpiryTime |
UTC Heure après laquelle le lien du rapport expirera dans ce format : aaaa-MM-jjTHH :mm :ssZ |
ReportGeneratedTime |
UTC Heure à laquelle le rapport a été généré au format suivant : aaaa-MM-jjTHH :mm :ssZ |
EndTime |
Heure de fin fournie dans la charge utile de la demande lors de la création du rapport. Cela ne s’applique que si ExecuteNow est défini sur « True » |
TotalRecurrenceCount |
RecurrenceCount fourni dans la charge utile de la demande lors de la création du rapport |
nextExecutionStartTime |
Horodatage UTC du début de l’exécution du prochain rapport |
TotalCount |
Nombre de jeux de données dans le tableau valeur |
StatusCode |
Code de résultat Les valeurs possibles sont 200, 400, 401, 403, 404 et 500 |
message |
Message d’état de l’exécution de l’API |
Vous pouvez essayer les API via l’URL de l’API Swagger .