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

Google Cloud Pricing API는 Google Cloud 서비스의 가격 및 기타 정보를 가져오는 데 도움이 되는 API 리소스 집합입니다.

이 페이지에서는 공개적으로 등록된 서비스 및 SKU뿐만 아니라 Google Cloud와의 계약의 일부로 Cloud Billing 계정에서만 사용할 수 있는 서비스 및 SKU에 대한 정보를 얻기 위해 수행할 수 있는 API 요청의 몇 가지 예시를 보여줍니다.

Pricing API를 사용하여 서비스 목록이나 특정 재고 관리 단위(SKU)의 가격을 가져올 수 있습니다. SKU는 구매 가능한 리소스를 고유하게 식별합니다. SKU의 예시는 Nvidia Tesla T4 GPU attached to Spot Preemptible VMs running in Warsaw입니다. 커스텀 가격 책정 계약이 있는 경우 Pricing API를 사용하여 Cloud Billing 계정과 연결된 커스텀 가격을 가져올 수 있습니다.

Pricing API에서 사용 가능한 리소스의 전체 목록과 요청 및 응답 형식에 대한 자세한 내용은 API 참조를 확인하세요.

시작하기 전에

Enable the Cloud Billing API.

Enable the API

Google Cloud 프로젝트에서 API가 사용 설정되어 있습니다. Pricing API는 Cloud Billing API의 일부입니다. Pricing API에 사용할 프로젝트를 확인하라는 메시지가 표시되면 Cloud Billing 계정의 모든 FinOps 및 결제 관리 요구사항을 포함하도록 설정된 Google Cloud 프로젝트를 사용하는 것이 좋습니다. 이 프로젝트는 Cloud Billing API를 비롯한 모든 결제 관련 API를 포함할 수 있습니다.

결제 관리 사용 사례에 FinOps 중심 프로젝트를 사용할 경우의 이점을 자세히 알아보세요.

공개 서비스 및 가격 정보 가져오기

다음 예시에서는 Google Cloud 서비스 및 SKU에 대한 공개적으로 나열된 정보를 가져오는 데 사용할 수 있는 API 호출을 보여줍니다.

공개 서비스, SKU 또는 가격에 대한 정보를 가져오려면 API 키를 만들어야 합니다.

공개 Google Cloud 서비스 목록 가져오기

다음 예시에서는 각 서비스의 메타데이터를 포함한 모든 공개 Google Cloud 서비스를 나열합니다.

이 API를 호출하는 데 특정 IAM 권한이 필요하지 않습니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • API_KEY: Google Cloud API 키입니다.
  • PAGE_SIZE(선택사항): 반환할 서비스 수입니다. 기본값은 50입니다.
  • PAGE_TOKEN(선택사항): 이전 응답의 nextPageToken에서 가져온 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v2beta/services?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
"https://cloudbilling.googleapis.com/v2beta/services?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN"

PowerShell

다음 명령어를 실행합니다.

$headers = @{  }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v2beta/services?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" | Select-Object -Expand Content

응답에는 서비스 목록과 각 서비스에 대한 정보가 포함됩니다. 아래의 예시에서는 Compute Engine의 형식을 보여줍니다.

결과는 페이지로 나뉘며 페이지당 서비스 50개로 제한됩니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 SKU 수를 줄이려면 pageSize=PAGE_SIZE를 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.

{
  "services": [
    {
      "name": "services/6F81-5844-456A",
      "serviceId": "6F81-5844-456A",
      "displayName": "Compute Engine",
    },
    ...
  ]
  "nextPageToken": "alphanumeric-page-token"
}

공개 Google Cloud 서비스의 SKU 목록 가져오기

다음 예시에서는 지정된 서비스의 공개 SKU를 나열합니다.

이 API를 호출하는 데 특정 IAM 권한이 필요하지 않습니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • API_KEY: Google Cloud API 키입니다.
  • FILTER: SKU를 필터링할 서비스입니다. 예를 들어 Compute Engine의 SKU를 나열하려면 service="services/6F81-5844-456A" 필터를 사용합니다.
  • PAGE_SIZE(선택사항): 반환할 최대 SKU 수입니다. 기본값은 50이고 최댓값은 5,000입니다.
  • PAGE_TOKEN(선택사항): 응답의 nextPageToken에 있는 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v2beta/skus?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
"https://cloudbilling.googleapis.com/v2beta/skus?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER"

PowerShell

다음 명령어를 실행합니다.

$headers = @{  }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v2beta/skus?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER" | Select-Object -Expand Content
다음 응답은 Compute Engine에 반환된 몇 가지 SKU 예시를 보여줍니다. 결과는 페이지로 나뉘며 페이지당 SKU는 50개로 제한됩니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 SKU 수를 변경하려면 pageSize=PAGE_SIZE를 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.
{
  "skus": [
    {
      "name": "skus/0008-F633-76AA",
      "skuId": "0008-F633-76AA",
      "displayName": "Example L4 GPU attached to Spot Preemptible VMs running in Hong Kong",
      "service": "6F81-5844-456A",
      "productTaxonomy": {
        "taxonomyCategories": [
          {
            "category": "GCP"
          },
          {
            "category": "Compute"
          },
          {
            "category": "GPUs"
          },
          {
            "category": "GPUs Preemptible"
          },
          {
            "category": "L4"
          }
        ]
      },
      "geoTaxonomy": {
        "type": "REGIONAL",
        "regionalMetadata": {
          "region": {
            "region": "asia-east2"
          }
        }
      }
    },
    {
      "name": "skus/000F-0B14-D302",
      "skuId": "000F-0B14-D302",
      "displayName": "Example Sole Tenancy Instance Ram running in Turin",
      "service": "6F81-5844-456A",
      "productTaxonomy": {
        "taxonomyCategories": [
          {
            "category": "GCP"
          },
          {
            "category": "Compute"
          },
          {
            "category": "GCE"
          },
          {
            "category": "VMs On Demand"
          },
          {
            "category": "Memory: Per GB"
          },
          {
            "category": "C3"
          }
        ]
      },
      "geoTaxonomy": {
        "type": "REGIONAL",
        "regionalMetadata": {
          "region": {
            "region": "europe-west12"
          }
        }
      }
    }
  ],
  "nextPageToken": "alphanumeric-nextpageToken"
}

모든 공개 Google Cloud SKU의 가격 가져오기

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • SKU_ID: 가격을 가져올 특정 SKU ID입니다. 모든 SKU의 가격을 가져오려면 `-`을 사용합니다.
  • API_KEY: Google Cloud API 키입니다.
  • PAGE_SIZE(선택사항): 반환할 서비스 수입니다. 기본값은 50입니다.
  • PAGE_TOKEN(선택사항): 이전 응답의 nextPageToken에서 가져온 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/prices?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
"https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/prices?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN"

PowerShell

다음 명령어를 실행합니다.

$headers = @{  }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/prices?key=API_KEY&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" | Select-Object -Expand Content

응답에는 각 SKU ID의 가격 책정 정보가 포함됩니다. 아래 예시는 페이지 크기 '2'를 사용해서 모든 공개 SKU의 형식을 보여줍니다.

결과는 페이지로 나뉘며 기본적으로 페이지당 50개 가격을 포함합니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 결과 수를 줄이려면 pageSize=PAGE_SIZE을 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.

{
  "prices": [
    {
      "name": "skus/0000-9B70-F099/price",
      "currencyCode": "USD",
      "valueType": "rate",
      "rate": {
        "tiers": [
          {
            "startAmount": {
              "value": "0"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 690000000
            }
          }
        ],
        "unitInfo": {
          "unit": "h",
          "unitDescription": "hour",
          "unitQuantity": {
            "value": "1"
          }
        },
        "aggregationInfo": {
          "level": "LEVEL_ACCOUNT",
          "interval": "INTERVAL_MONTHLY"
        }
      }
    },
    {
      "name": "skus/0002-17F9-0731/price",
      "currencyCode": "USD",
      "valueType": "rate",
      "rate": {
        "tiers": [
          {
            "startAmount": {
              "value": "0"
            },
            "listPrice": {
              "currencyCode": "USD"
            }
          },
          {
            "startAmount": {
              "value": "1"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 390000000
            }
          },
          {
            "startAmount": {
              "value": "1024"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 340000000
            }
          }
        ],
        "unitInfo": {
          "unit": "GiBy.mo",
          "unitDescription": "gibibyte month",
          "unitQuantity": {
            "value": "1"
          }
        },
        "aggregationInfo": {
          "level": "LEVEL_ACCOUNT",
          "interval": "INTERVAL_MONTHLY"
        }
      }
    }
  ],
  "nextPageToken": "1234alphanumericCode"
}

공개 SKU 가격 가져오기

다음 예시는 공개적으로 나열된 SKU의 가격을 가져옵니다. SKU 페이지에서 Google Cloud SKU ID의 전체 목록을 가져올 수 있습니다.

이 API를 호출하는 데 특정 IAM 권한이 필요하지 않습니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • API_KEY: Google Cloud API 키입니다.
  • SKU_ID: skus.list 메서드를 사용하여 가져올 수 있는 SKU 식별자입니다. ID는 skus/ 식별자 뒤에 오는 문자열입니다.
  • CURRENCY: (선택사항) 가격에 대한 ISO-4217 통화 코드입니다. 지정하지 않으면 가격은 Cloud Billing 계정과 동일한 통화로 표시됩니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/price?key=API_KEY¤cyCode=CURRENCY

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
"https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/price?key=API_KEY¤cyCode=CURRENCY"

PowerShell

다음 명령어를 실행합니다.

$headers = @{  }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/skus/SKU_ID/price?key=API_KEY¤cyCode=CURRENCY" | Select-Object -Expand Content
다음 예시는 SKU ID 0012-B7F2-DD14의 가격 책정 세부정보를 보여줍니다.
{
  "name": "skus/0012-B7F2-DD14/price",
  "currencyCode": "USD",
  "valueType": "rate",
  "rate": {
    "tiers": [
      {
        "startAmount": {
          "value": "0"
        },
        "listPrice": {
          "currencyCode": "USD",
          "nanos": 1397000
        }
      }
    ],
    "unitInfo": {
      "unit": "GiBy.h",
      "unitDescription": "gibibyte hour",
      "unitQuantity": {
        "value": "1"
      }
    },
    "aggregationInfo": {
      "level": "ACCOUNT",
      "interval": "MONTHLY"
    }
  }
}

Cloud Billing 계정 관련 정보 가져오기

다음 예시에서는 특정 SKU와 같이 Cloud Billing 계정과 관련된 정보를 가져오거나 커스텀 가격 책정 계약에 포함될 수 있는 가격 책정 정보를 가져오는 API 호출을 보여줍니다.

사용 중인 API 리소스에 따라 Cloud Billing 계정에 대한 다음 권한이 있어야 합니다.

  • billingAccounts.services를 사용하여 서비스에 대한 정보를 가져오려면 다음이 필요합니다.

    • billing.billingAccountServices.get
    • billing.billingAccountServices.list
  • billingAccounts.skus를 사용하여 SKU에 대한 정보를 가져오려면 다음이 필요합니다.

    • billing.billingAccountSkus.get
    • billing.billingAccountSkus.list
  • billingAccounts.skugroups를 사용하여 SKU 그룹에 대한 정보를 가져오려면 다음이 필요합니다.

    • billing.billingAccountSkuGroups.get
    • billing.billingAccountSkuGroups.list
  • billingAccounts.skugroups.skus를 사용하여 SKU 그룹에 속하는 SKU에 대한 정보를 가져오려면 다음이 필요합니다.

    • billing.billingAccountSkuGroupSkus.get
    • billing.billingAccountSkuGroupSkus.list
  • billingAccounts.skus.price를 사용하여 SKU 가격에 대한 정보를 가져오려면 다음이 필요합니다.

    • billing.billingAccountPrice.get

서비스 계정을 사용하여 API를 호출하는 경우 서비스 계정에 권한이 있어야 합니다.

다음과 같은 사전 정의된 역할에는 Cloud Billing 계정과 관련된 정보를 가져올 수 있는 권한이 있습니다.

  • 결제 계정 관리자
  • 결제 계정 뷰어

Cloud Billing 계정의 SKU 그룹 목록 가져오기

Google Cloud와 가격 계약을 체결한 경우 계약은 특정 카테고리에 속하는 SKU가 포함된 SKU 그룹을 참조할 수 있습니다. 예를 들어 BigQuery SKU 그룹에는 다양한 위치에서 BigQuery 분석 및 스토리지를 위한 SKU가 포함됩니다.

다음 예시에서는 Cloud Billing 계정에서 사용할 수 있는 SKU 그룹을 보여줍니다.

이 API를 호출하려면 Cloud Billing 계정에 대한 billing.billingAccountSkuGroups.list IAM 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • BILLING_ACCOUNT_ID: Cloud Billing 계정 ID입니다.
  • PAGE_SIZE(선택사항): 반환할 최대 SKU 그룹 수입니다. 기본값은 50이고 최댓값은 5,000입니다.
  • PAGE_TOKEN(선택사항): 응답의 nextPageToken에 있는 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN"

PowerShell

다음 명령어를 실행합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" | Select-Object -Expand Content

응답은 아래와 같은 형식의 SKU 그룹 목록입니다.

결과는 페이지로 나뉘며 페이지당 SKU 그룹은 50개로 제한됩니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 SKU 수를 줄이려면 pageSize=PAGE_SIZE를 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.

{
    "billingAccountSkuGroups": [
      {
        "name": "billingAccounts/012345-567890-ABCDEF/skuGroups/001234-group-id-1",
        "displayName": "SKU group name 1"
      },
      {
        "name": "billingAccounts/012345-567890-ABCDEF/skuGroups/0045657-group-id-2",
        "displayName": "SKU group name 2"
      },
      ...
      "nextPageToken": "A1234-alphanumeric-page-token"
}

Cloud Billing 계정의 SKU 그룹에 SKU 목록 가져오기

다음 예시는 커스텀 가격 책정 계약의 일부일 수 있는 SKU 그룹의 SKU를 나열합니다.

이 API를 호출하려면 Cloud Billing 계정에 대한 billing.billingAccountSkuGroupSkus.list IAM 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • SKU_GROUP_ID: billingAccount.skuGroups.list method에서 가져온 SKU 그룹 ID입니다.
  • BILLING_ACCOUNT_ID: Cloud Billing 계정 ID입니다.
  • PAGE_SIZE(선택사항): 가져올 SKU 그룹 수입니다. 기본값은 5,000입니다.
  • PAGE_TOKEN(선택사항): 응답의 nextPageToken에 있는 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups/SKU_GROUP_ID/skus?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups/SKU_GROUP_ID/skus?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN"

PowerShell

다음 명령어를 실행합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skuGroups/SKU_GROUP_ID/skus?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" | Select-Object -Expand Content

다음 예시는 ID가 28934b47-792e-4afa-a025-7720d410482fNetwork Data Transfer SKU 그룹의 처음 2개 SKU를 보여줍니다.

결과는 페이지로 나뉘며 페이지당 SKU 그룹은 5,000개로 제한됩니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 SKU 수를 줄이려면 pageSize=PAGE_SIZE를 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.

{
  "billingAccountSkuGroupSkus": [
    {
      "name": "billingAccounts/12345-ABCDE-EXAMPLE/skuGroups/28934b47-792e-4afa-a025-7720d410482f/skus/0009-6F35-3126",
      "skuId": "0009-6F35-3126",
      "displayName": "Network Internet Data Transfer from EMEA to Seoul",
      "service": "9662-B51E-5089",
      "productTaxonomy": {
        "taxonomyCategories": [
          {
            "category": "GCP"
          },
          {
            "category": "Network"
          },
          {
            "category": "Data Transfer"
          },
          {
            "category": "Cloud SQL"
          },
          {
            "category": "Premium"
          }
        ]
      },
      "geoTaxonomy": {
        "type": "REGIONAL",
        "regionalMetadata": {
          "region": {
            "region": "europe-west1"
          }
        }
      }
    },
    {
      "name": "billingAccounts/12345-ABCDE-EXAMPLE/skuGroups/28934b47-792e-4afa-a025-7720d410482f/skus/000B-47CC-2924",
      "skuId": "000B-47CC-2924",
      "displayName": "API Gateway Network Internet Data Transfer Intercontinental from/to Oceania",
      "service": "36A9-155B-23F0",
      "productTaxonomy": {
        "taxonomyCategories": [
          {
            "category": "GCP"
          },
          {
            "category": "Network"
          },
          {
            "category": "Data Transfer"
          },
          {
            "category": "API Gateway"
          },
          {
            "category": "Premium"
          }
        ]
      },
      "geoTaxonomy": {}
    }
  ],
  "nextPageToken": "alphanumeric-nextPageToken"
}

Cloud Billing 계정에 대해 모든 Google Cloud SKU의 가격 가져오기

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • SKU_ID: 가격을 가져올 특정 SKU ID입니다. 모든 SKU의 가격을 가져오려면 `-`을 사용합니다.
  • API_KEY: Google Cloud API 키입니다.
  • PAGE_SIZE(선택사항): 반환할 서비스 수입니다. 기본값은 50입니다.
  • PAGE_TOKEN(선택사항): 이전 응답의 nextPageToken에서 가져온 페이지 토큰입니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/prices?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/prices?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN"

PowerShell

다음 명령어를 실행합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/prices?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" | Select-Object -Expand Content

응답에는 Cloud Billing 계정에만 사용할 수 있는 SKU와 각 SKU의 가격 책정 정보를 포함하여 SKU ID 목록과 해당 가격이 포함되어 있습니다. 아래 예시는 페이지 크기가 '2'인 모든 SKU의 형식을 보여줍니다.

결과는 페이지로 나뉘며 기본적으로 페이지당 50개 가격을 포함합니다. 응답에는 결과의 다음 페이지를 가져오는 데 사용할 수 있는 nextPageToken이 포함됩니다. 다음 배치를 가져오려면 pageToken=PAGE_TOKEN을 설정합니다. 페이지당 결과 수를 변경하려면 pageSize=PAGE_SIZE를 설정합니다. 모든 항목이 나열된 경우 토큰이 반환되지 않습니다.

{
  "billingAccountPrices": [
    {
      "name": "billingAccounts/01ABCD-EFGH23-UVWXYZ/skus/0000-9B70-F099/price",
      "currencyCode": "USD",
      "valueType": "rate",
      "rate": {
        "tiers": [
          {
            "startAmount": {
              "value": "0"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 690000000
            },
            "contractPrice": {
              "currencyCode": "USD",
              "nanos": 690000000
            },
            "effectiveDiscountPercent": {
              "value": "0"
            }
          }
        ],
        "unitInfo": {
          "unit": "h",
          "unitDescription": "hour",
          "unitQuantity": {
            "value": "1"
          }
        },
        "aggregationInfo": {
          "level": "LEVEL_ACCOUNT",
          "interval": "INTERVAL_MONTHLY"
        }
      },
      "priceReason": {
        "type": "default-price",
        "defaultPrice": {}
      }
    },
    {
      "name": "billingAccounts/01ABCD-EFGH23-UVWXYZ/skus/0002-17F9-0731/price",
      "currencyCode": "USD",
      "valueType": "rate",
      "rate": {
        "tiers": [
          {
            "startAmount": {
              "value": "0"
            },
            "listPrice": {
              "currencyCode": "USD"
            },
            "contractPrice": {
              "currencyCode": "USD"
            },
            "effectiveDiscountPercent": {
              "value": "0"
            }
          },
          {
            "startAmount": {
              "value": "1"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 390000000
            },
            "contractPrice": {
              "currencyCode": "USD",
              "nanos": 390000000
            },
            "effectiveDiscountPercent": {
              "value": "0"
            }
          },
          {
            "startAmount": {
              "value": "1024"
            },
            "listPrice": {
              "currencyCode": "USD",
              "nanos": 340000000
            },
            "contractPrice": {
              "currencyCode": "USD",
              "nanos": 340000000
            },
            "effectiveDiscountPercent": {
              "value": "0"
            }
          }
        ],
        "unitInfo": {
          "unit": "GiBy.mo",
          "unitDescription": "gibibyte month",
          "unitQuantity": {
            "value": "1"
          }
        },
        "aggregationInfo": {
          "level": "LEVEL_ACCOUNT",
          "interval": "INTERVAL_MONTHLY"
        }
      },
      "priceReason": {
        "type": "default-price",
        "defaultPrice": {}
      }
    }
  ],
  "nextPageToken": "1234alphanumericCode"
}

Cloud Billing 계정의 SKU 가격 가져오기

다음 예시에서는 SKU에 대해 지불하는 비용을 가져옵니다. SKU가 커스텀 가격 책정 계약의 일부인 경우 응답에는 정가에 대한 할인 정보가 포함됩니다.

이 API를 호출하려면 Cloud Billing 계정에 대한 billing.billingAccountPrice.get IAM 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • SKU_ID: billingAccounts.skus 메서드를 사용하여 가져올 수 있는 SKU 식별자입니다. ID는 skus/ 식별자 뒤에 오는 문자열입니다.
  • BILLING_ACCOUNT_ID: Cloud Billing 계정 ID입니다.
  • CURRENCY: (선택사항) 가격에 대한 ISO-4217 통화 코드입니다. 지정하지 않으면 가격은 Cloud Billing 계정과 동일한 통화로 표시됩니다.

HTTP 메서드 및 URL:

GET https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/price?currencyCode=CURRENCY

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

다음 명령어를 실행합니다.

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/price?currencyCode=CURRENCY"

PowerShell

다음 명령어를 실행합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://cloudbilling.googleapis.com/v1beta/billingAccounts/BILLING_ACCOUNT_ID/skus/SKU_ID/price?currencyCode=CURRENCY" | Select-Object -Expand Content
응답에는 priceReason 객체의 SKU 요금에 대한 세부정보가 포함됩니다. 다음 예시는 SKU ID 0012-B7F2-DD14의 가격 책정 세부정보를 보여줍니다. 이 예시에서 Cloud Billing 계정에는 가격 책정 계약이 있지만 이 SKU의 정가를 지불하고 있습니다.
{
  "name": "billingAccounts/015978-D9414D-B80267/skus/0012-B7F2-DD14/price",
  "currencyCode": "USD",
  "valueType": "rate",
  "rate": {
    "tiers": [
      {
        "startAmount": {
          "value": "0"
        },
        "listPrice": {
          "currencyCode": "USD",
          "nanos": 1270000
        },
        "contractPrice": {
          "currencyCode": "USD",
          "nanos": 1270000
        }
      }
    ],
    "unitInfo": {
      "unit": "GiBy.h",
      "unitDescription": "gibibyte hour",
      "unitQuantity": {
        "value": "1"
      }
    },
    "aggregationInfo": {
      "level": "ACCOUNT",
      "interval": "MONTHLY"
    }
  },
  "priceReason": {
    "type": "default-price",
    "defaultPrice": {}
  }
}