

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS Price List Query API を使用したサービスと製品の検索
<a name="using-price-list-query-api"></a>


|  | 
| --- |
| に関するフィードバックを提供するには AWS の料金表、この[簡単なアンケート](https://amazonmr.au1.qualtrics.com/jfe/form/SV_cO0deTMyKyFeezA)に回答してください。回答者は匿名になります。**注:** このアンケートは英語にのみ対応しています。 | 

次のような場合は、Price List Query API を使用することをお勧めします。
+ 製品の料金情報を検索する。
+ フィルタに一致する製品と料金を検索する。
+ フロントエンド環境など、リソースが限られているアプリケーションを開発している場合に必要な製品および料金を迅速に見つける。

製品 AWS のサービス、製品の属性と料金を確認するには、次のステップを参照してください。

## ステップ 1: 利用可能な検出結果 AWS のサービス
<a name="price-list-query-api-find-services"></a>

サービスを見つけたら、`DescribeServices` API オペレーションを使用してその属性を取得できます。サービスコードがわかっている場合は、 AWS Price List Query API を使用してサービスの属性を取得することもできます。次に、サービス属性を使用して、属性値に基づいて要件を満たす製品を検索できます。

### 例: サービスの検索
<a name="examples-cli-price-list-query-api"></a>

次の AWS Command Line Interface (AWS CLI) コマンドは、 サービスを検索する方法を示しています。

**Example 例: すべてのサービスの検索**  

```
aws pricing describe-services --region us-east-1
```
**レスポンス**  

```
{
    "FormatVersion": "aws_v1", 
    "NextToken": "abcdefg123", 
    "Services": [ 
        {
            "AttributeNames": [ 
                "volumeType", 
                "maxIopsvolume", 
                "instanceCapacity10xlarge", 
                "locationType", 
                "operation" 
            ], 
            "ServiceCode": "AmazonEC2" 
        },
        {
            "AttributeNames": [ 
                "productFamily", 
                "volumeType", 
                "engineCode", 
                "memory" 
            ], 
            "ServiceCode": "AmazonRDS" 
        },
        {...} 
    ] 
}
```

**Example 例: Amazon Elastic Compute Cloud (Amazon EC2) のサービスメタデータの検索**  
次のコマンドは、Amazon EC2 のサービスメタデータを検索する方法を示しています。  

```
aws pricing describe-services --region us-east-1 --service-code AmazonEC2
```
**レスポンス**  

```
{
    "FormatVersion": "aws_v1", 
    "NextToken": "abcdefg123", 
    "Services": [ 
        {
            "AttributeNames": [ 
                "productFamily", 
                "volumeType", 
                "engineCode", 
                "memory" 
            ], 
            "ServiceCode": "AmazonEC2" 
        }
    ] 
}
```

 AWS リージョン は Price List Query API の API エンドポイントです。エンドポイントは製品やサービスの属性とは関係ありません。

詳細については、「*AWS Billing and Cost Management API リファレンス*」の「[https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_DescribeServices.html](https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_DescribeServices.html)」を参照してください。

## ステップ 2: 属性に使用可能な値の検索
<a name="price-list-query-api-find-attributes"></a>

[ステップ 1](#price-list-query-api-find-services) では、 AWS のサービスの属性リストを取得しました。このステップでは、これらの属性を使用して製品を検索します。ステップ 3 では、これらの属性に使用可能な値が必要です。

属性の値を見つけるには、`GetAttributeValues` API オペレーションを使用します。API を呼び出すには、`AttributeName` および `ServiceCode` パラメータを指定します。

### 例: 属性値の取得
<a name="examples-to-find-attributes"></a>

次の AWS Command Line Interface (AWS CLI) コマンドは、 の属性値を取得する方法を示しています AWS のサービス。

**Example 例: Amazon Relational Database Service (Amazon RDS) の属性値の検索**  

```
aws pricing get-attribute-values --service-code AmazonRDS --attribute-name operation --region us-east-1
```
**レスポンス**  

```
{
    "AttributeValues": [
        {
            "Value": "CreateDBInstance:0002"
        },
        {
            "Value": "CreateDBInstance:0003"
        },
        {
            "Value": "CreateDBInstance:0004"
        },
        {
            "Value": "CreateDBInstance:0005"
        }
    ],
    "NextToken": "abcdefg123"
}
```

 AWS リージョン は Price List Query API の API エンドポイントです。エンドポイントは製品やサービスの属性とは関係ありません。

詳細については、 *AWS Billing and Cost Management API リファレンス*の[https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetAttributeValues.html](https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetAttributeValues.html)「」および[AWS SDKs](https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetAttributeValues.html#API_pricing_GetAttributeValues_SeeAlso)」を参照してください。

## ステップ 3: 属性からの製品の検索
<a name="using-the-aws-price-list-query-api-finding-products-from-attributes"></a>

このステップでは、[ステップ 1](#price-list-query-api-find-services) と[ステップ 2](#price-list-query-api-find-attributes) の情報を使用して製品とその条件を検索します。製品に関する情報を取得するには、`GetProducts` API オペレーションを使用します。フィルタのリストを指定して、必要な製品を返すことができます。

**注記**  
Price List Query API がサポートしているのは `"AND"` 一致のみです。コマンドのレスポンスには、指定したすべてのフィルタに一致する製品のみが含まれます。

### 例: 属性からの製品の検索
<a name="example-cli-filters-for-finding-products-from-attributes"></a>

次の AWS Command Line Interface (AWS CLI) コマンドは、 属性を使用して製品を検索する方法を示しています。

**Example 例: フィルタを指定した製品の検索**  
次のコマンドは、Amazon Relational Database Service (Amazon RDS) のフィルタを指定する方法を示しています。  

```
aws pricing get-products --service-code AmazonRDS --region us-east-1 --filters Type=TERM_MATCH,Field=operation,Value="CreateDBInstance:0002"
```
**レスポンス**  

```
{
    "FormatVersion": "aws_v1",
    "PriceList": ["{
        \"product\":{
            \"productFamily\":\"Database Instance\",
            \"attributes\":{
                \"engineCode\":\"2\",
                \"enhancedNetworkingSupported\":\"Yes\",
                \"memory\":\"64 GiB\",
                \"dedicatedEbsThroughput\":\"2000 Mbps\",
                \"vcpu\":\"16\",
                \"locationType\":\"AWS Region\",
                \"storage\":\"EBS Only\",
                \"instanceFamily\":\"General purpose\",
                \"regionCode\":\"us-east-1\",
                \"operation\":\"CreateDBInstance:0002\",
                ...
            },
            \"sku\":\"22ANV4NNQP3UUCWY\"},
            \"serviceCode\":\"AmazonRDS\",
            \"terms\":{...}"
    ],
    "NextToken": "abcd1234"
}
```

**Example 例: `filters.json` ファイルを使用したフィルタの指定**  
次のコマンドは、すべてのフィルタを記載した JSON ファイルを指定する方法を示しています。  

```
aws pricing get-products --service-code AmazonRDS --region us-east-1 --filters file://filters.json
```
例えば、`filters.json` ファイルには以下のフィルタが含まれる場合があります。  

```
[
  {
    "Type": "TERM_MATCH",
    "Field": "operation",
    "Value": "CreateDBInstance:0002"
  }
]
```
次の例は、複数のフィルタを指定する方法を示しています。  

```
[
  {
    "Type": "TERM_MATCH",
    "Field": "AttributeName1",
    "Value": "AttributeValue1"
  },
  {
    "Type": "TERM_MATCH",
    "Field": "AttributeName2",
    "Value": "AttributeValue2"
  },
  ...
]
```
**レスポンス**  

```
{
    "FormatVersion": "aws_v1",
    "PriceList": ["{
        \"product\":{
            \"productFamily\":\"Database Instance\",
            \"attributes\":{
                \"engineCode\":\"2\",
                \"enhancedNetworkingSupported\":\"Yes\",
                \"memory\":\"64 GiB\",
                \"dedicatedEbsThroughput\":\"2000 Mbps\",
                \"vcpu\":\"16\",
                \"locationType\":\"AWS Region\",
                \"storage\":\"EBS Only\",
                \"instanceFamily\":\"General purpose\",
                \"regionCode\":\"us-east-1\",
                \"operation\":\"CreateDBInstance:0002\",
                ...
            },
            \"sku\":\"22ANV4NNQP3UUCWY\"},
            \"serviceCode\":\"AmazonRDS\",
            \"terms\":{...}"
    ],
    "NextToken": "abcd1234"
}
```

詳細については、以下の各トピックを参照してください。
+ [https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetProducts.html](https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetProducts.html) *AWS Billing and Cost Management API* [リファレンスの および言語固有の AWS SDKs](https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_pricing_GetProducts.html#API_pricing_GetProducts_SeeAlso) 
+ [サービス料金表ファイルの読み取り](reading-service-price-list-files.md)
+ [サービス料金表ファイルでの料金の確認](finding-prices-in-service-price-list-files.md)