Amazon announced new developer tools and services at its AWS Summit in New York yesterday.

The Amazon API Gateway allows developers to build a REST API through a point-and-click configuration page, and the idea is to create a backend service for mobile or web applications.

The Amazon API Gateway lets you define models, resources and methods. A model is defined using a JSON (JavaScript Object Notation) system and represents a custom object in your API, such as a product or customer. A method is an HTTP method such as GET, DELETE, POST or PUT.

Methods can be hooked to an existing REST API anywhere on the web, or to a function in AWS Lambda, a service that runs Node.js or Java code in response to events.

Once you have created an API, you can deploy it to a “stage”, which is an instance of your API. Stages can be labelled alpha, beta, testing or production, for example. Once you have a stage, you can configure a cache, set usage limits, and hook it to Amazon’s CloudWatch monitoring service.

You can also download an automatically generated SDK for iOS, Android or JavaScript.

Generate an SDK with API Gateway

The API Gateway is operated by Amazon as a service; developers do not need to know what virtual machine (VM) or machines run it. The same is true of Lambda.

This means you can create a mobile backend with Node.js or Java code, without having to use Amazon’s EC2 VM service at all. It's clearly a move towards Platform as a Service (PaaS) rather than Infrastructure as a Service (IaaS).

The advantage for the developer is that you work at a higher level of abstraction, do not have to manage the server operating system, and scaling is automated.

The disadvantage is that you have less flexibility and control, and it is harder to migrate to another cloud provider.

AWS Code Pipeline

Amazon also announced new code services. AWS CodeCommit is a source code management service for Git repositories.

AWS CodePipeline is a continuous delivery service, which means you can automate the process of building and deploying an application after developers commit code changes.

There are options to integrate AWS CodePipeline with GitHub and use an on-premises Jenkins build server. AWS already offers AWS CodeDeploy, for automating application deployment to EC2, and these three services are designed to work together. ®