

# Desenvolver APIs HTTP no API Gateway
<a name="http-api-develop"></a>

Esta seção fornece detalhes sobre os recursos necessários do API Gateway durante o desenvolvimento de suas APIs do API Gateway.

Ao desenvolver a API do API Gateway, você decidirá uma série de características da API. Essas características dependem do caso de uso da sua API. Por exemplo, talvez você queira permitir que somente determinados clientes chamem sua API ou talvez queira disponibilizá-las a todos. É recomendável que uma chamada de API execute uma função do Lambda, faça uma consulta de banco de dados ou chame uma aplicação.

**Topics**
+ [Criar uma API HTTP](#http-api-examples)
+ [Criar rotas para APIs HTTP no API Gateway](http-api-develop-routes.md)
+ [Tipos de endereço IP para APIs HTTP no API Gateway](http-api-ip-address-type.md)
+ [Controlar e gerenciar o acesso a APIs HTTP no API Gateway](http-api-access-control.md)
+ [Criar integrações para APIs HTTP no API Gateway](http-api-develop-integrations.md)
+ [Configurar CORS para APIs HTTP no API Gateway](http-api-cors.md)
+ [Transformar solicitações e respostas de API para APIs HTTP no API Gateway](http-api-parameter-mapping.md)
+ [Usar definições do OpenAPI para APIs HTTP no API Gateway](http-api-open-api.md)

## Criar uma API HTTP
<a name="http-api-examples"></a>

Para criar uma API funcional, você deve ter pelo menos uma rota, integração, estágio e implantação.

Os exemplos a seguir mostram como criar uma API com uma integração de AWS Lambda ou HTTP, uma rota e um estágio padrão configurado para implantar alterações automaticamente.

Este guia pressupõe que você já está familiarizado com o API Gateway e o Lambda. Para obter uma lista mais detalhada, consulte  [Começar a usar o API Gateway](getting-started.md).

**Topics**
+ [Crie uma API HTTP usando o Console de gerenciamento da AWS](#apigateway-http-api-create.console)
+ [Criar uma API HTTP usando a CLI da AWS](#http-api-examples.cli.quick-create)

### Crie uma API HTTP usando o Console de gerenciamento da AWS
<a name="apigateway-http-api-create.console"></a>

1. Abra o [console do API Gateway](https://console.aws.amazon.com/apigateway).

1. Selecione **Create API** (Criar API).

1. Em **HTTP API (API HTTP)**, escolha **Build (Criar)**.

1. Escolha **Add integration (Adicionar integração)** e, em seguida, escolha uma função do AWS Lambda ou insira um endpoint HTTP.

1. Em **Name (Nome)**, insira um nome para a sua API.

1. Selecione **Review and create**.

1. Escolha **Create** (Criar).

Agora sua API está pronta para invocar. Você pode testar sua API inserindo seu URL de invocação em um navegador ou usando Curl.

```
curl https://api-id.execute-api.us-east-2.amazonaws.com
```

### Criar uma API HTTP usando a CLI da AWS
<a name="http-api-examples.cli.quick-create"></a>

É possível usar a criação rápida para criar uma API com uma integração do Lambda ou HTTP, uma rota padrão genérica e um estágio padrão configurado para implantar alterações automaticamente. O comando [create-api](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-api.html) a seguir usa criação rápida para criar uma API que se integra a uma função do Lambda no backend.

**nota**  
Para invocar uma integração do Lambda, o API Gateway deve ter as permissões obrigatórias. Você pode usar uma política baseada em recursos ou uma função do IAM para conceder permissões do API Gateway para invocar uma função do Lambda. Para saber mais, consulte [AWS Lambda Permissões](https://docs.aws.amazon.com/lambda/latest/dg/lambda-permissions.html) no *Guia do desenvolvedor do AWS Lambda*.

**Example**  

```
aws apigatewayv2 create-api --name my-api --protocol-type HTTP --target arn:aws:lambda:us-east-2:123456789012:function:function-name
```

Agora sua API está pronta para invocar. Você pode testar sua API inserindo seu URL de invocação em um navegador ou usando Curl.

```
curl https://api-id.execute-api.us-east-2.amazonaws.com
```