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에 대한 다른 지표를 다운로드하려면 GitHub Copilot 메트릭 API를 사용하여 시간대별 사용량 분석을(를) 참조하세요.
모든 유료 제품의 사용량 데이터 가져오기
-
다음 방법 중 하나를 사용하여 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 스토리지의 경우
|