Google Cloud Platform 가격 책정 정보 가져오기

이 페이지에서는 다음과 같은 Cloud Billing Catalog API 사용 방법을 보여줍니다.

  • 각 서비스의 관련 메타데이터를 포함한 모든 공개 서비스의 목록을 가져옵니다.
  • 다음을 포함한 서비스의 모든 공개 SKU의 목록을 가져옵니다.
    • 사람이 읽을 수 있는 SKU 설명
    • SKU 공개 가격
    • SKU를 구매할 수 있는 지역
    • SKU 카테고리 지정 데이터

시작하기 전에

Cloud Billing Catalog API를 호출하려면 API 키가 필요합니다. API 키에 관한 자세한 내용은 API 키 사용에서 확인할 수 있습니다.

카탈로그의 공개 서비스 나열

이 단계에서는 각 서비스의 관련 메타데이터를 포함한 모든 공개 서비스의 목록을 가져옵니다.

API

다음 코드는 카탈로그의 모든 공개 서비스를 나열합니다.

요청:

GET https://cloudbilling.googleapis.com/v1/services?key=API_KEY

응답:

{
  "services": [
    {
      "name": "[SERVICE_NAME]",
      "serviceId": "[SERVICE_ID]",
      "displayName": "[DISPLAY_NAME]",
    },
    [...]
  ]
}

각 항목의 의미는 다음과 같습니다.

  • [SERVICE_NAME]은 서비스의 리소스 이름입니다.
  • [SERVICE_ID]는 서비스의 식별자입니다.
  • [DISPLAY_NAME]은 사람이 읽을 수 있는 서비스의 표시 이름입니다.

서비스의 SKU 목록 가져오기

API

다음 코드는 지정한 서비스의 카탈로그에 있는 SKU를 나열합니다.

요청:

GET https://cloudbilling.googleapis.com/v1/services/SERVICE_ID/skus?key=API_KEY

각 항목의 의미는 다음과 같습니다.

  • SERVICE_ID는 상위 서비스의 식별자입니다.

응답:

{
  "skus": [
    {
        "name": "[SKU_NAME]",
        "skuId": "[SKU_ID]",
        "description": "[SKU_DESCRIPTION]",
        "category": {
            "serviceDisplayName": "[SVC_DISPLAY_NAME]",
            "resourceFamily": "[FAMILY]",
            "resourceGroup": "[GROUP]",
            "usageType": "[USAGE]",
        },
        "serviceRegions": [
          "[REGION]"
        ],
        "pricingInfo": [
          {
              "effectiveTime": "[TIME]",
              "summary": "[SUMMARY]",
              "pricingExpression": {
                  "usageUnit": "[UNIT]",
                  "usageUnitDescription": "[UNIT_DESCRIPTION]",
                  "displayQuantity": [DISPLAY_QUANTITY],
                  "tieredRates": [
                    {
                        "startUsageAmount": [START_AMOUNT],
                        "unitPrice": {
                            "currencyCode": "[CURRENCY_CODE]",
                            "units": [UNITS],
                            "nanos": [NANOS],
                        },
                    }
                  ],
              },
              "aggregationInfo": {
                  "aggregationLevel": enum("[AGGREGATION_LEVEL]"),
                  "aggregationInterval": enum("[AGGREGATION_INTERVAL]"),
                  "aggregationCount": [AGGREGATION_COUNT],
              },
              "currencyConversionRate": [CONVERSION_RATE],
          }
        ],
        "serviceProviderName": "[SERVICE_PROVIDER]",
    }
  ]
}

각 항목의 의미는 다음과 같습니다.

  • [SKU_NAME]services/{SERVICE_ID}/skus/{SKU_ID} 형식으로 표시되는 SKU의 리소스 이름입니다.
  • [SKU_ID]는 SKU의 고유 식별자입니다.
  • [SKU_DESCRIPTION]은 사람이 읽을 수 있는 SKU의 설명입니다.
  • [SVC_DISPLAY_NAME]은 SKU가 속한 서비스의 표시 이름입니다.
  • [FAMILY]는 SKU가 참조하는 제품 유형입니다. 예: '컴퓨팅'. '저장소', 네트워크' 등
  • [GROUP]은 관련 SKU의 그룹 분류입니다. 예: 'RAM', 'GPU', '예측' 등
  • [USAGE]는 SKU의 소모량을 나타냅니다. 예: 'OnDemand', 'Preemptible', 'Commit1Mo', 'Commit1Yr' 등
  • [REGION]은 SKU가 제공되는 서비스 지역 목록입니다. 예: 'asia-east1'
  • [TIME]2014-10-02T15:01:23.045123456Z 형식으로 표시되는 타임스탬프로서 가격이 적용된 시간을 나타냅니다.
  • [SUMMARY]는 사람이 읽을 수 있는 가격 정보 요약입니다.
  • [UNIT]은 가격이 지정된 사용량 단위의 약칭입니다. 예: usageUnit에 'GiBy'를 입력하면 사용량이 'GiB(기비바이트)' 단위로 지정됨을 의미합니다.
  • [UNIT_DESCRIPTION]은 사람이 읽을 수 있는 사용량 단위입니다. 예: 'GiB'
  • [DISPLAY_QUANTITY]는 가격 정보 표시에 대한 권장 수량 단위입니다. 가격 정보를 표시할 때 (unitPrice * displayQuantity) per displayQuantity usageUnit을 표시하는 것이 좋습니다. 이 입력란은 가격 수식에 영향을 미치지 않으며 표시 목적으로만 사용됩니다. 예: unitPrice가 '0.0001 USD', usageUnit은 'GB', displayQuantity는 '1000'인 경우 가격 정보를 '1000GB당 0.10 USD'로 표시하는 것이 좋습니다.
  • [START_AMOUNT] 이 금액이 사용된 후 비로소 요율에 따라 사용량의 가격이 책정됩니다. 예: startUsageAmount가 10인 경우 처음 10개의 usage_units 다음부터 아래 정의된 가격에 따라 사용량의 가격이 책정됩니다.
  • [CURRENCY_CODE]는 ISO 4217에 따라 정의된 3자리 통화 코드입니다.
  • [UNITS]는 전체 금액 단위입니다. 예: currencyCode가 'USD'인 경우 단위 1개는 1달러(USD)입니다.
  • [NANOS]는 금액의 나노(10^-9) 단위 번호입니다. 이 값은 -999,999,999 ~ +999,999,999(포함) 사이여야 합니다 단위가 양수라면 나노가 양수 또는 0이어야 합니다. 단위가 0인 경우에는 나노가 양수, 0 또는 음수가 될 수 있습니다. 음수 단위일 때는 나노가 음수 또는 0이어야 합니다. 예: $-1.75는 units=-1nanos=-750,000,000로 나타냅니다.
  • [AGGREGATION_LEVEL]은 비용 계산을 위해 사용량을 집계하는 수준입니다. 유효한 값은 ACCOUNT, PROJECT, AGGREGATION_LEVEL_UNSPECIFIED입니다.
  • [AGGREGATION_INTERVAL]은 비용 계산을 위해 사용량을 집계하는 간격입니다. 유효한 값은 DAILY, MONTHY, AGGREGATION_INTERVAL_UNSPECIFIED입니다.
  • [AGGREGATION_COUNT]는 집계하는 간격의 수입니다. 예: aggregationLevel이 'DAILY'이고 aggregationCount가 14인 경우 집계가 14일 간 이루어집니다.
  • [CONVERSION_RATE]는 USD에서 요청에 지정된 통화로 전환될 때 적용되는 통화 전환율입니다. 통화가 지정되지 않은 경우 기본값은 1.0입니다.
  • [SERVICE_PROVIDER]는 서비스 제공업체를 식별합니다. Google Cloud Platform의 자사 서비스에는 'Google'이 사용됩니다.
이 페이지가 도움이 되었나요? 평가를 부탁드립니다.