GitHub에서 데이터를 자동으로 풀(pull)해서 REST API를 사용하여 비용과 사용량을 모니터링하는 데 사용하는 비즈니스 시스템을 채울 수 있습니다. 이전에 GitHub REST API를 사용한 적이 없다면 REST API 사용을(를) 참조하세요.
엔드포인트 개요
계정 유형과 원하는 정보 수준에 따라 서로 다른 엔드포인트를 사용하여 데이터를 수집해야 합니다.
| 어카운트 | 보고서 | Access | 엔드포인트 | 자세한 정보 | 
|---|---|---|---|---|
| 사용자 | 모든 유료 제품의 사용량 데이터 | 계정 보유자 | /users/{username}/settings/billing/usage | 향상된 청구 플랫폼 | 
| 조직 | 프리미엄 요청 사용량(할당량 및 청구된 사용량 세부 정보 포함) | 조직 소유자 및 청구 관리자 | /organizations/{org}/settings/billing/premium_request/usage | 향상된 청구 플랫폼 | 
| 조직 | 모든 유료 제품의 사용량 데이터 | 조직 소유자 및 청구 관리자 | /organizations/{org}/settings/billing/usage | 향상된 청구 플랫폼 | 
| 엔터프라이즈 | 프리미엄 요청 사용량(할당량 및 청구된 사용량 세부 정보 포함) | 엔터프라이즈 소유자 및 청구 관리자 | /enterprises/{enterprise}/settings/billing/premium_request/usage | 엔터프라이즈 청구를 위한 REST API 엔드포인트 | 
| 엔터프라이즈 | 모든 유료 제품의 사용량 데이터 | 엔터프라이즈 소유자 및 청구 관리자 | /enterprises/{enterprise}/settings/billing/usage | 엔터프라이즈 청구를 위한 REST API 엔드포인트 | 
프리미엄 요청 사용량 가져오기
- 
다음 방법 중 하나를 사용하여 GitHub로 인증하세요. - GitHub CLI: gh auth login명령을 사용하여 인증합니다. GitHub CLI 빠른 시작을(를) 참조하세요.
- personal access token (classic) 만들기: API 호출 시 토큰을 전달합니다. personal access token (classic) 만들기를 참조하세요.
 
- GitHub CLI: 
- 
필요한 premium_request/usage엔드포인트를 호출하여 데이터를 가져오려는 엔터프라이즈, 조직, 사용자를 지정합니다.
GitHub Copilot에 대한 다른 지표를 다운로드하려면 Tracking license activation and initial usage with Copilot usage metrics을(를) 참조하세요.
모든 유료 제품의 사용량 데이터 가져오기
- 
다음 방법 중 하나를 사용하여 GitHub로 인증하세요. - GitHub CLI: gh auth login명령을 사용하여 인증합니다. GitHub CLI 빠른 시작을(를) 참조하세요.
- personal access token (classic) 만들기: API 호출 시 토큰을 전달합니다. personal access token (classic) 만들기를 참조하세요.
 
- GitHub CLI: 
- 
필요한 usage엔드포인트를 호출하여 데이터를 가져오려는 엔터프라이즈, 조직, 사용자를 지정합니다.
- 
기본적으로 현재 연도의 모든 제품의 데이터가 보고됩니다. 엔터프라이즈의 경우 비용 센터와 연결되지 않은 데이터만 보고됩니다. 쿼리 매개 변수를 사용하여 보다 구체적인 데이터를 요청할 수 있습니다. - year,- month,- day,- hour매개 변수 중 하나 이상을 설정하여 특정 기간을 지정합니다.
- cost_center_id쿼리 매개 변수를 사용하여 식별자가 보고할 비용 센터를 지정합니다(엔터프라이즈 엔드포인트에만 해당).
 
더 자세한 정보와 호출 및 응답의 예를 보려면 다음을 참조하세요.
이전 청구 플랫폼에 사용된 엔드포인트에서 마이그레이션
요금제 청구로 전환한 후 이전 청구 플랫폼에서 데이터를 가져오는 데 사용한 엔드포인트는 더 이상 정확한 사용량 정보를 반환하지 않습니다.
- 다음 형식의 모든 호출 업그레이드: /ACCOUNT-TYPE/NAME/settings/billing/PRODUCT
- 동등한 호출을 사용하려면: /ACCOUNT-TYPE/NAME/settings/billing/usage엔드포인트
인증 방식 변경
fine-grained personal access token를 사용하여 이전 엔드포인트를 인증한 경우 새 엔드포인트로 인증하려면 personal access token (classic)을 만들어야 합니다.
또한 새 쿼리 매개 변수를 사용하여 기간이나 비용 센터를 지정할 수 있습니다.
새 응답 데이터에서 GitHub Actions 정보 계산
이전 응답의 예
{"total_minutes_used": 305, "total_paid_minutes_used": 0, "included_minutes": 3000, "minutes_used_breakdown": { "UBUNTU": 205, "MACOS": 10, "WINDOWS": 90 }  }
새 응답의 예
{ "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"} ] }
새 응답 데이터에서 동일한 값을 가져오려면 다음을 수행합니다.
| 이전 속성 | 새 API 응답에서 계산 | 
|---|---|
| total_minutes_used | 
 | 
| total_paid_minutes_used | 이제 netAmount를 통해 $ 금액으로 표시됩니다.
 | 
| included_minutes | 이제 discountAmount를 통해 $ 금액으로 표시됩니다.
 | 
| minutes_used_breakdown | 
 | 
새 응답 데이터에서 GitHub Packages 정보 계산
이전 응답의 예
{ "total_gigabytes_bandwidth_used": 50, "total_paid_gigabytes_bandwidth_used": 40, "included_gigabytes_bandwidth": 10 }
새 응답의 예
{ "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" } ] }
| 이전 속성 | 새 API 응답에서 계산 | 
|---|---|
| total_gigabytes_bandwidth_used | 
 | 
| total_paid_gigabytes_bandwidth_used | 이제 netAmount를 통해 $ 금액으로 표시됩니다.
 | 
| included_gigabytes_bandwidth | 이제 discountAmount를 통해 $ 금액으로 표시됩니다.
 | 
새 응답 데이터에서 공유 스토리지 정보 계산
이전 응답의 예
{ "days_left_in_billing_cycle": 20, "estimated_paid_storage_for_month": 15, "estimated_storage_for_month": 40 }
새 응답의 예
{ "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" } ] }
| 이전 속성 | 새 API 응답에서 계산 | 
|---|---|
| days_left_in_billing_cycle | 사용할 수 없음. 이 정보는 현재 월의 일 수에서 해당 월의 현재 일을 빼서 유추할 수 있습니다. | 
| estimated_paid_storage_for_month | 이제 netAmount를 통해 $ 금액으로 표시됩니다.필수 구성 요소: month및year쿼리 매개 변수를 전달합니다.Actions 스토리지의 경우 
 
 | 
| estimated_storage_for_month | 필수 구성 요소: month및year쿼리 매개 변수를 전달합니다.Actions 스토리지의 경우 
 
 |