API de création de rapports pour les clients Enterprise - Détails d’utilisation
Notes
Le 1er mai 2024, les API Azure Enterprise Reporting seront mises hors service. Toutes les API de création de rapports d’entreprise restantes cesseront de répondre aux demandes. Les clients doivent passer à l’utilisation des API Microsoft Cost Management avant cette période. Pour en savoir plus, consultez Vue d’ensemble de la migration des rapports Azure Enterprise vers les API Microsoft Cost Management.
Cette API prend uniquement en charge les enregistrements d’utilisation avec jusqu’à 400 caractères de balise pour une ressource donnée. L’API peut échouer si vous avez des enregistrements qui dépassent le nombre maximal d’étiquettes. Si vous rencontrez ce problème, migrez vers les exportations ou l’API d’exportations.
L’API Usage Details (Détails d’utilisation) offre une analyse quotidienne des quantités consommées et des frais estimés pour un abonnement. Le résultat inclut également des informations sur les instances, les compteurs et les services. L’API peut être interrogée par période de facturation ou en indiquant une date de début et de fin.
Les propriétés d’en-tête communes qui doivent être ajoutées sont spécifiées dans l’article Vue d’ensemble des API de création de rapports pour les clients Enterprise. Des plages de dates personnalisées peuvent être spécifiées avec les paramètres de date de début et de fin au format AAAA-MM-JJ.
CSV Format
L’API répertoriée ci-dessous fournit des données au format CSV.
Appel synchrone (sans interrogation)
Nous renvoyons des données au format CSV en réponse à l’appel de l’API REST. Les performances de l’API dépendent de la quantité de données d’utilisation retournées par votre appel et peuvent prendre un maximum de 60 minutes. Même si l’API prend en charge les plages de dates personnalisées, nous vous recommandons de les restreindre en fonction du volume de données d’utilisation dont vous disposez pour cette période. Nous autorisons un support maximal d’un mois.
Méthode | URI de demande de téléchargement |
---|---|
GET | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetails/download?billingPeriod={billingPeriod} |
GET | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetails/download?startTime=2017-01-01& endTime=2017-01-10 |
Appel asynchrone (basé sur l’interrogation)
L’appel est un processus en deux étapes qui vous oblige à envoyer d’abord votre demande pour un intervalle de temps spécifique, puis à interroger pour obtenir une URL basée sur une clé d’accès partagé pour un emplacement Blob Azure contenant des données CSV. Le délai maximal pris en charge ici est de 36 mois. Nous recommandons cette API pour les jeux de données plus volumineux.
Méthode | Envoyer l’URI de demande |
---|---|
POST | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetails/submit?billingPeriod={billingPeriod} |
POST | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetails/submit?startTime=2017-04-01& endTime=2017-04-10 |
Réponse de l’appel d’envoi asynchrone (interrogation)
{
"id": "string",
"enrollmentNumber":"string",
"requestedOn":"2017-08-29T06:56:29.1290704Z",
"status":1,
"blobPath":"",
"reportUrl":"string",
"startDate":"2017-06-01T00:00:00",
"endDate":"2017-06-30T00:00:00"
}
Définitions de propriété Response d’appel asynchrone
Nom de la propriété | Type | Description |
---|---|---|
id | string | ID unique de la demande. |
enrollmentNumber | string | Numéro d’inscription pour lequel la demande a été effectuée. |
requestedOn | string | Date d’heure à laquelle la demande a été effectuée. |
status | int | Indique le status de la demande. Mis en file d’attente = 1, InProgress = 2, Terminé = 3, Failed = 4, NoDataFound = 5, ReadyToDownload=6, TimedOut = 7. |
blobPath | string | URL de clé d’accès partagé à l’objet blob csv. |
reportUrl | string | URL qui peut être utilisée pour interroger le status de la demande d’envoi. |
startDate | string | Correspond au début de l’intervalle de temps utilisé lors de l’envoi de l’appel. |
endDate | string | Correspond à la fin de l’intervalle de temps utilisé lors de l’envoi de l’appel. |
ReportUrl est l’URL qui peut être utilisée pour d’autres appels d’interrogation (opération GET). Lorsque le champ status dans la réponse de la demande d’interrogation revient à 3, la demande est terminée. Nous avons le champ blobPath dans la réponse remplie avec une URL pointant vers les données csv. L’objet blob est disponible pendant 1 jour à partir de la date heure dans le champ de réponse requestedOn. Les états 4, 5 et 7 sont des échecs status où l’appel d’API a rencontré une condition d’erreur. Pour tous les autres status, l’appel d’interrogation doit être répété.
Format JSON
L’API répertoriée ci-dessous fournit des données au format JSON. Si aucune période de facturation n’est spécifiée, les données de la période de facturation en cours sont retournées. La période maximale prise en charge est de 36 mois.
Méthode | URI de demande |
---|---|
GET | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetails |
GET | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/billingPeriods/{billingPeriod}/usagedetails |
GET | https://consumption.azure.com/v3/enrollments/{enrollmentNumber}/usagedetailsbycustomdate?startTime=2017-01-01& endTime=2017-01-10 |
Notes
Pour utiliser la version précédente de l’API, remplacez v3 par v2 dans les URL ci-dessus. Certains champs ne sont pas disponibles si vous utilisez v2.
response
En raison du volume potentiellement important de données, le jeu de résultats est paginé. La propriété nextLink, si elle est présente, spécifie le lien vers la page suivante de données. Si le lien est vide, cela indique qu’il s’agit de la dernière page.
{
"id": "string",
"data": [
{
"serviceName":"Storage",
"serviceTier":"Premium Page Blobs",
"location":"US West",
"chargesBilledSeparately":false,
"partNumber":"ABC-12345",
"resourceGuid":"00000000-0000-0000-0000-000000000000",
"offerId":"MS-AZR-0003P",
"cost":1,
"accountId":123456,
"productId":1234,
"resourceLocationId":12,
"consumedServiceId":1,
"departmentId":3456,
"accountOwnerEmail":"account@live.com",
"accountName":"Account Name",
"serviceAdministratorId":"123",
"subscriptionId":0000000,
"subscriptionGuid":"00000000-0000-0000-0000-000000000000",
"subscriptionName":"Subscription Name",
"date":"2018-08-01T00:00:00",
"product":"Locally Redundant Storage Premium Storage - Page Blob/P10 - US West",
"meterId":"00000000-0000-0000-0000-000000000000",
"meterCategory":"Storage",
"meterSubCategory":"Locally Redundant",
"meterRegion":"California",
"meterName":"Premium Storage - Page Blob/P10 (Units)",
"consumedQuantity"1,
"resourceRate":1,
"resourceLocation":"uswest",
"consumedService":"Microsoft.Compute",
"instanceId":"Id",
"serviceInfo1":"string",
"serviceInfo2":"string",
"additionalInfo":"string",
"tags":"string",
"storeServiceIdentifier":"string",
"departmentName":"Department Name",
"costCenter":"1234",
"unitOfMeasure":"Units",
"resourceGroup":"ResourceGroup"
}
],
"nextLink": "string"
}
Définitions de champ détails d’utilisation
Nom de la propriété | Type | Description |
---|---|---|
id | string | ID unique de l’appel d’API. |
data | Tableau JSON | Tableau des détails d’utilisation quotidienne pour chaque instance ou compteur. |
nextLink | string | Quand il y a plus de pages de données, le lien nextLink pointe vers l’URL qui retourne la page suivante de données. |
accountId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
productId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
resourceLocationId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
consumedServiceId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
departmentId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
accountOwnerEmail | string | Compte de messagerie du propriétaire du compte. |
accountName | string | Nom du compte entré par le client. |
serviceAdministratorId | string | Adresse e-mail de l’administrateur de service. |
subscriptionId | int | Champ obsolète. Présent à des fins de compatibilité descendante. |
subscriptionGuid | string | Identificateur global unique de l’abonnement. |
subscriptionName | string | Nom de l'abonnement. |
Date | string | Date à laquelle la consommation s’est produite. |
product | string | Détails supplémentaires sur le compteur. |
meterId | string | Identificateur du compteur qui a émis l’utilisation. |
meterCategory | string | Service de plateforme Azure qui a été utilisé. |
meterSubCategory | string | Définit le type de service Azure pouvant affecter le tarif. |
meterRegion | string | Identifie l’emplacement du centre de données pour certains services dont le prix est basé sur cet emplacement. |
meterName | string | Nom du compteur. |
consumedQuantity | double | Quantité du compteur consommée. |
resourceRate | double | Taux applicable par unité facturable. |
cost | double | Frais encourus pour le compteur. |
resourceLocation | string | Identifie le centre de données où le compteur s’exécute. |
consumedService | string | Service de plateforme Azure qui a été utilisé. |
instanceId | string | Cet identificateur est le nom de la ressource ou l’ID de ressource complet. Pour plus d’informations, consultez API Azure Resource Manager |
serviceInfo1 | string | Métadonnées de service Azure interne. |
serviceInfo2 | string | Par exemple, le type d’image d’une machine virtuelle et le nom du fournisseur de services Internet pour ExpressRoute. |
additionalInfo | string | Métadonnées relatives au service. Par exemple, le type d’image d’une machine virtuelle. |
tags | string | Balises ajoutées par le client. Pour plus d’informations, voir Organisation des ressources Azure à l’aide de balises. |
storeServiceIdentifier | string | Cette colonne n'est pas utilisée. Présent à des fins de compatibilité descendante. |
departmentName | string | Nom du service. |
costCenter | string | Centre de coût avec lequel l’utilisation est associée. |
unitOfMeasure | string | Identifie l’unité dans laquelle le service est facturé. Par exemple : Go, heures, 10 000 s. |
resourceGroup | string | Groupe de ressources dans lequel le compteur déployé s’exécute. Pour plus d’informations, consultez Présentation d’Azure Resource Manager. |
chargesBilledSeparately | string | Frais facturés en dehors de l’engagement monétaire. |
location | string | Emplacement où le service a été déployé. |
offerId | string | OfferId par rapport au service. |
partNumber | string | Numéro de référence SKU pour le service. |
resourceGuid | string | Identificateur du compteur qui a émis l’utilisation. |
serviceTier | string | Niveau de service. |
serviceName | string | Nom du service. |
Limitation du débit
Pour permettre des expériences cohérentes entre nos clients, toutes les API d’utilisation sont limitées au niveau de l’inscription. Lorsque vous atteignez la limite, vous recevez le code d’état HTTP 429 Trop de requêtes. Le débit actuel dans un intervalle de 15 minutes est le suivant :
API | Limite de débit |
---|---|
Nextpage | 1 000 |
Télécharger | 50 |
Sondage | 180 |
Envoyer | 20 |