

# Invocar APIs REST no API Gateway
<a name="how-to-call-api"></a>

Para chamar uma API implantada, os clientes enviam solicitações ao URL do serviço de componente do API Gateway para execução da API, conhecido como `execute-api`.

A URL base para APIs REST está no seguinte formato: 

```
https://api-id.execute-api.region.amazonaws.com/stage/
```

em que *api-id* é o identificador da API, *region* é a região da AWS e *stage* é o nome do estágio da implantação da API. 

**Importante**  
Antes de invocar uma API, você deve implantá-la no API Gateway. Para encontrar instruções sobre como implantar uma API, consulte [Implantar APIs REST no API Gateway](how-to-deploy-api.md). 

**Topics**
+ [Obter o URL de invocação de uma API](#apigateway-how-to-call-rest-api)
+ [Invocação de uma API](#apigateway-call-api)
+ [Use o console do API Gateway para testar um método de API REST](how-to-test-method.md)
+ [Usar um SDK Java gerado pelo API Gateway para uma API REST](how-to-call-apigateway-generated-java-sdk.md)
+ [Usar um SDK Android gerado pelo API Gateway para uma API REST](how-to-generate-sdk-android.md)
+ [Usar um SDK JavaScript gerado pelo API Gateway para uma API REST](how-to-generate-sdk-javascript.md)
+ [Usar um SDK Ruby gerado pelo API Gateway para uma API REST](how-to-call-sdk-ruby.md)
+ [Usar o SDK iOS gerado pelo API Gateway para uma API REST em Objective-C ou Swift](how-to-generate-sdk-ios.md)

## Obter o URL de invocação de uma API
<a name="apigateway-how-to-call-rest-api"></a>

Você pode usar o console, a AWS CLI ou uma definição de OpenAPI exportada para obter o URL de invocação de uma API.

### Obter o URL de invocação de uma API usando o console
<a name="apigateway-obtain-url-console"></a>

O procedimento a seguir mostra como obter o URL de invocação de uma API no console da API REST.

**Obter o URL de invocação de uma API usando o console da API REST**

1. Inicie uma sessão no console do API Gateway em [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1. Escolha uma API implantada.

1. No painel de navegação principal, escolha **Estágio**.

1. Em **Detalhes do estágio**, escolha o ícone de cópia para copiar o URL de invocação da API.

   Esse URL é para o recurso-raiz da sua API.  
![\[Após a criação da API REST, o console mostra o URL de chamada da API.\]](http://docs.aws.amazon.com/pt_br/apigateway/latest/developerguide/images/getting-started-rest-invoke-url.png)

1. Para obter o URL de invocação de uma API para outro recurso na API, expanda o estágio no painel de navegação secundário e selecione um método.

1. Escolha o ícone de cópia para copiar o URL de invocação no nível de recurso da API.  
![\[O URL no nível do recurso para a API REST está no painel de navegação secundário do estágio.\]](http://docs.aws.amazon.com/pt_br/apigateway/latest/developerguide/images/resource-level-invoke-url.png)

#### Obter o URL de invocação de uma API usando a AWS CLI
<a name="apigateway-obtain-url-cli"></a>

O procedimento a seguir mostra como obter o URL de invocação de uma API usando a AWS CLI.

**Obter o URL de invocação de uma API usando a AWS CLI**

1. Use o comando a seguir para obter `rest-api-id`. Esse comando retorna todos os valores `rest-api-id` em sua região. Para saber mais, consulte [get-rest-apis](https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-rest-apis.html).

   ```
   aws apigateway get-rest-apis
   ```

1. Substitua o exemplo `rest-api-id` pelo seu `rest-api-id`, substitua o exemplo *\$1stage-name\$1* pelo seu *\$1stage-name\$1* e substitua a *\$1region\$1* pela sua região.

   ```
   https://{restapi_id}.execute-api.{region}.amazonaws.com/{stage_name}/
   ```

##### Obter o URL de invocação de uma API usando o arquivo de definição OpenAPI exportado da API
<a name="apigateway-obtain-url-openapi"></a>

Também é possível construir esse URL-raiz combinando os campos `host` e `basePath` de um arquivo de definição OpenAPI exportado da API. Para encontrar instruções sobre como exportar sua API, consulte [Exportar uma API REST do API Gateway](api-gateway-export-api.md).

## Invocação de uma API
<a name="apigateway-call-api"></a>

Você pode chamar sua API implantada usando o navegador, curl ou outras aplicações, como o [Postman](https://www.postman.com/).

Além disso, você pode usar o console do API Gateway para testar uma chamada de API. O teste usa o recurso `TestInvoke` do API Gateway, que permite testar a API antes de implantá-la. Para ter mais informações, consulte [Use o console do API Gateway para testar um método de API REST](how-to-test-method.md).

**nota**  
Os valores de parâmetros de strings de consulta em uma URL de invocação não podem conter `%%`.

### Invocar uma API usando um navegador da web
<a name="apigateway-call-api-brower"></a>

Se sua API permitir acesso anônimo, você poderá usar qualquer navegador da web para invocar qualquer método `GET`. Insira o URL de invocação completo na barra de endereço do navegador.

Para outros métodos ou chamadas que exigem autenticação, você deve especificar uma carga útil ou assinar as solicitações. É possível lidar com elas em um script por trás de uma página HTML ou em um aplicativo cliente usando um dos SDKs da AWS.

#### Invocar uma API usando curl
<a name="apigateway-call-api-curl"></a>

Você pode usar uma ferramenta como [curl](https://curl.se/) em seu terminal para chamar sua API. O exemplo de comando curl a seguir invoca o método GET no recurso `getUsers` do estágio `prod` de uma API.

------
#### [ Linux or Macintosh ]

```
curl -X GET 'https://b123abcde4.execute-api.us-west-2.amazonaws.com/prod/getUsers'
```

------
#### [ Windows ]

```
curl -X GET "https://b123abcde4.execute-api.us-west-2.amazonaws.com/prod/getUsers"
```

------