Vous pouvez extraire automatiquement des de GitHub pour remplir les systèmes métier que vous utilisez pour surveiller les coûts et l’utilisation à l’aide de l’API REST. Si vous n'avez pas encore utilisé l'API REST GitHub REST API, les articles suivants sont un bon point de départ, consultez Utilisation de l’API REST.
Utilisation de la plateforme de facturation /usage
point de terminaison pour récupérer les détails de l’utilisation limitée pour une entreprise
La plateforme de facturation améliorée fournit un seul point de terminaison d’API REST /usage
que vous pouvez utiliser pour signaler l’utilisation de tous les produits mesurés. Les données d’utilisation fournies par ce point de terminaison sont disponibles uniquement pour les propriétaires d’entreprise et les gestionnaires de facturation d’entreprise. Vous devez donc vous authentifier auprès de GitHub.
- Si vous utilisez l’interface CLI GitHub, utilisez la commande
gh auth login
pour vous authentifier. - Sinon, vous devrez créer un personal access token (classic), consultez Créer un personal access token (classic) .
Lorsque vous appelez le point de terminaison /usage
, vous devez spécifier l’entreprise pour laquelle vous souhaitez des données et, par défaut, l’utilisation de l’année en cours qui n’appartient pas à un centre de coûts est signalée. Vous pouvez réduire l’étendue des données retournées par le point de terminaison à l’aide de paramètres de requête.
- Définissez une période spécifique en définissant un ou plusieurs des paramètres suivants :
year
,month
,day
ethour
. - Définissez un centre de coûts à signaler par identificateur à l’aide du paramètre de requête
cost_center_id
.
Pour plus d’informations et un exemple d’appel et de réponse, consultez Obtenir le rapport d’utilisation de la facturation pour une entreprise.
Migration à partir des points de terminaison utilisés pour la plateforme de facturation précédente
La plateforme de facturation précédente a fourni trois points de terminaison différents pour les données d’utilisation :
- obtenir la facturation GitHub Actions pour und’entreprise
- obtenir la facturation GitHub Actions pour und’entreprise
- Obtenir la facturation du stockage partagé pour und’entreprise
Lorsque vous passez à la plateforme de facturation améliorée, ces points de terminaison ne retournent plus d’informations d’utilisation précises. Vous devez mettre à niveau toute automatisation qui utilise ces points de terminaison pour utiliser le nouveau point de terminaison GET /enterprises/{enterprise}/settings/billing/usage. Les tableaux ci-dessous fournissent une explication détaillée sur l’utilisation de la plateforme de facturation pour récupérer des informations équivalentes.
Modifications apportées à la définition d’appel
Si vous avez utilisé un fine-grained personal access token pour vous authentifier avec les points de terminaison précédents, vous devrez créer un personal access token (classic) pour vous authentifier avec le nouveau point de terminaison.
En outre, vous pouvez utiliser les nouveaux paramètres de requête pour spécifier une période ou un centre de coûts.
Obtention des données de facturation GitHub Actions à partir des nouvelles données de réponse
Exemple de réponse précédente
{"total_minutes_used": 305, "total_paid_minutes_used": 0, "included_minutes": 3000, "minutes_used_breakdown": { "UBUNTU": 205, "MACOS": 10, "WINDOWS": 90 } }
Exemple de nouvelle réponse
{ "usageItems": [ { "date": "2023-08-01", "product": "Actions", "sku": "Actions Linux", "quantity": 100, "unitType": "minutes", "pricePerUnit": 0.008, "grossAmount": 0.8, "discountAmount": 0, "netAmount": 0.8, "organizationName": "GitHub", "repositoryName": "github/example"} ] }
Pour obtenir les mêmes valeurs à partir des nouvelles données de réponse :
Propriété précédente | Calcul à partir d'une nouvelle réponse de l'API |
---|---|
total_minutes_used |
|
total_paid_minutes_used | Ceci est maintenant représenté sous la forme d’un montant de $ via netAmount .
|
included_minutes | Ceci est maintenant représenté sous la forme d’un montant de $ via discountAmount .
|
minutes_used_breakdown |
|
Obtention des données de facturation GitHub Actions à partir des nouvelles données de réponse
Exemple de réponse précédente
{ "total_gigabytes_bandwidth_used": 50, "total_paid_gigabytes_bandwidth_used": 40, "included_gigabytes_bandwidth": 10 }
Exemple de nouvelle réponse
{ "usageItems": [ { "date": "2023-08-01", "product": "Packages", "sku": "Packages data transfer", "quantity": 100, "unitType": "gigabytes", "pricePerUnit": 0.008, "grossAmount": 0.8, "discountAmount": 0, "netAmount": 0.8, "organizationName": "GitHub", "repositoryName": "github/example" } ] }
Propriété précédente | Calcul à partir d'une nouvelle réponse de l'API |
---|---|
total_gigabytes_bandwidth_used |
|
total_paid_gigabytes_bandwidth_used | Ceci est maintenant représenté sous la forme d’un montant de $ via netAmount .
|
included_gigabytes_bandwidth | Ceci est maintenant représenté sous la forme d’un montant de $ via discountAmount .
|
Obtenir la facturation du stockage partagé à partir des nouvelles données de réponse
Exemple de réponse précédente
{ "days_left_in_billing_cycle": 20, "estimated_paid_storage_for_month": 15, "estimated_storage_for_month": 40 }
Exemple de nouvelle réponse
{ "usageItems": [ { "date": "2023-08-01", "product": "Packages", "sku": "Packages storage", "quantity": 100, "unitType": "GigabyteHours", "pricePerUnit": 0.008, "grossAmount": 0.8, "discountAmount": 0, "netAmount": 0.8, "organizationName": "GitHub", "repositoryName": "github/example" } ] }
Propriété précédente | Calcul à partir d'une nouvelle réponse de l'API |
---|---|
days_left_in_billing_cycle | Non disponible. Cette information peut être déduite en soustrayant le jour du mois en cours du nombre de jours du mois en cours. |
estimated_paid_storage_for_month | Ceci est maintenant représenté sous la forme d’un montant de $ via netAmount . Prérequis : transmettez les paramètres de requête month et year . Pour le stockage des actions
|
estimated_storage_for_month | Prérequis : transmettez les paramètres de requête month et year . Pour le stockage des actions
|