メニュー
Amazon API Gateway
開発者ガイド

AWS CLI コマンドを使用して API を作成する

AWS CLI を使用して API を作成するには、create-rest-apicreate-resource または get-resourcesput-methodput-method-responseput-integration、および put-integration-response コマンドを使用します。以下の手順では、これらの AWS CLI コマンドを使用してシンプルな PetStore API を作成する方法を示します。

AWS CLI を使用してシンプルな PetStore API を作成するには

  1. create-rest-api コマンドを呼び出して RestApi を作成します。

    Copy
    aws apigateway create-rest-api --name 'Simple PetStore (AWS CLI)' --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "name": "Simple PetStore (AWS CLI)", "id": "vaz7da96z6", "createdDate": 1494572809 }
  2. get-resources コマンドを呼び出して、RestApi のルートリソース ID を取得します。

    Copy
    aws apigateway get-resources --rest-api-id vaz7da96z6 --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "items": [ { "path": "/", "id": "begaltmsm8" } ] }
  3. put-method コマンドを呼び出して、GET /Method リクエストをオープンなアクセスで作成します。

    Copy
    aws apigateway put-method --rest-api-id vaz7da96z6 --resource-id begaltmsm8 --http-method GET --authorization-type "NONE" --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "apiKeyRequired": false, "httpMethod": "GET", "authorizationType": "NONE" }
  4. put-method-response コマンドを呼び出して、GET / メソッドの MethodResponse を作成します。

    Copy
    aws apigateway put-method-response --rest-api-id vaz7da96z6 --resource-id begaltmsm8 --http-method GET --status-code 200 --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "statusCode": "200" }
  5. put-integration コマンドを呼び出して、GET / メソッドの指定したエンドポイントで Integration を作成します。

    Copy
    aws apigateway put-integration --rest-api-id vaz7da96z6 --resource-id begaltmsm8 --http-method GET --type HTTP --integration-http-method GET --uri 'http://petstore-demo-endpoint.execute-api.com/petstore/pets' --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "httpMethod": "GET", "passthroughBehavior": "WHEN_NO_MATCH", "cacheKeyParameters": [], "type": "HTTP", "uri": "http://petstore-demo-endpoint.execute-api.com/petstore/pets", "cacheNamespace": "begaltmsm8" }
  6. put-integration-response コマンドを呼び出して、HTTP バックエンドと統合された GET / メソッドの IntegrationResponse を作成します。

    Copy
    aws apigateway put-integration-response --rest-api-id vaz7da96z6 --resource-id begaltmsm8 --http-method GET --status-code 200 --selection-pattern "" --region us-west-2

    このコマンドの出力は次のとおりです。

    Copy
    { "selectionPattern": "", "statusCode": "200" }

create-deployment を呼び出して、API を stage ステージなどにデプロイします。

Copy
aws apigateway create-deployment --rest-api-id vaz7da96z6 --stage-name test --stage-description 'Test stage' --description 'First deployment'

この API をテストするには、https://vaz7da96z6.execute-api.us-west-2.amazonaws.com/test URL をブラウザに入力し、vaz7da96z6 を API の識別子に置き換えます。問題がなければ、出力は次のようになります。

Copy
[ { "id": 1, "type": "dog", "price": 249.99 }, { "id": 2, "type": "cat", "price": 124.99 }, { "id": 3, "type": "fish", "price": 0.99 } ]