

# Fazer solicitações usando a API REST
<a name="RESTAPI"></a>

Esta seção contém informações sobre como fazer solicitações para endpoints do Amazon S3 usando a API REST. Para obter uma lista dos endpoints do Amazon S3, consulte [Regiões e endpoints](https://docs.aws.amazon.com/general/latest/gr/s3.html) na *Referência geral da AWS*.

## Criar nomes de host do S3 para solicitações de API REST
<a name="constructing-hostname-rest-api-requests"></a>

Endpoints do Amazon S3 seguem a estrutura mostrada abaixo:

```
s3.{{Region}}.amazonaws.com
```

Os endpoints de pontos de acesso do Amazon S3 e endpoints de pilha dupla também seguem a estrutura padrão:
+ **Pontos de acesso do Amazon S** ‐`s3-accesspoint.{{Region}}.amazonaws.com`
+ **Pilha dupla** ‐ `s3.dualstack.{{Region}}.amazonaws.com` 

Para obter uma lista completa de regiões e endpoints do Amazon S3, consulte [Endpoints e cotas do Amazon S3](https://docs.aws.amazon.com/general/latest/gr/s3.html) na *Referência geral da Amazon Web Services*.

## Solicitações de estilo de hospedagem virtual e caminho
<a name="virtual-hosted-path-style-requests"></a>

Ao fazer solicitações usando a API REST, use URIs no estilo de hospedagem virtual ou de caminho para os endpoints do Amazon S3. Para obter mais informações, consulte [Solicitações em estilo de caminho](https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#path-style-access).

**Example Solicitação no estilo de hospedagem virtual**  
Veja a seguir um exemplo de uma solicitação de estilo de hospedagem virtual para excluir o arquivo `puppy.jpg` do bucket `examplebucket` na região Oeste dos EUA (Oregon). Para obter mais informações sobre solicitações de estilo hospedadas virtualmente, consulte [Solicitações em estilo de caminho](https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#virtual-hosted-style-access).   

```
1. DELETE /puppy.jpg HTTP/1.1
2. Host: examplebucket.s3.us-west-2.amazonaws.com
3. Date: Mon, 11 Apr 2016 12:00:00 GMT
4. x-amz-date: Mon, 11 Apr 2016 12:00:00 GMT
5. Authorization: {{authorization string}}
```

**Example Solicitação no estilo de caminho**  
Veja a seguir um exemplo com a versão no estilo de caminho da mesma solicitação.  

```
1. DELETE /examplebucket/puppy.jpg HTTP/1.1
2. Host: s3.us-west-2.amazonaws.com
3. Date: Mon, 11 Apr 2016 12:00:00 GMT
4. x-amz-date: Mon, 11 Apr 2016 12:00:00 GMT
5. Authorization: {{authorization string}}
```
Atualmente, o Amazon S3 é compatível com o acesso a URLs no estilo de hospedagem virtual e no estilo de caminho em todas as Regiões da AWS. No entanto, os URLs no estilo de caminho serão descontinuados no futuro. Para obter mais informações, consulte a observação **Importante** a seguir.  
Para obter mais informações sobre solicitações de estilo de caminho, consulte [Solicitações em estilo de caminho](https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#path-style-access).  
Atualização (23 de setembro de 2020): para garantir que os clientes tenham o tempo necessário para fazer a transição para URLs no estilo de hospedagem virtual, decidimos postergar a desativação de URLs no estilo de caminho. Para obter mais informações, consulte [Amazon S3 Path Deprecation Plan – The Rest of the Story](https://aws.amazon.com/blogs/aws/amazon-s3-path-deprecation-plan-the-rest-of-the-story/) no *Blog de notícias da AWS*.

## Fazer solicitações para endpoints de pilha dupla usando a API REST
<a name="rest-api-dual-stack"></a>

Ao usar a API REST, acesse um endpoint de pilha dupla diretamente usando um nome de endpoint (URI) de hospedagem virtual ou de caminho. Todos os nomes de endpoint de pilha dupla do Amazon S3 incluem a região. Diferente dos endpoints somente-IPv4 padrão, os endpoints de hospedagem virtual e de caminho usam nomes de endpoint específicos para a região. 

**Example Solicitação de endpoint de pilha dupla do estilo de hospedagem virtual**  
Conforme mostrado no exemplo a seguir, use um endpoint no estilo de hospedagem virtual na solicitação REST que recupera o objeto do bucket chamado `puppy.jpg` do bucket `examplebucket` na região Oeste dos EUA (Oregon).   

```
1. GET /puppy.jpg HTTP/1.1
2. Host: examplebucket.s3.dualstack.us-west-2.amazonaws.com
3. Date: Mon, 11 Apr 2016 12:00:00 GMT
4. x-amz-date: Mon, 11 Apr 2016 12:00:00 GMT
5. Authorization: {{authorization string}}
```

**Example Solicitação de endpoint de pilha dupla no estilo de caminho**  
Ou use um endpoint no de estilo caminho na solicitação, conforme mostrado no exemplo a seguir.   

```
1. GET /examplebucket/puppy.jpg HTTP/1.1
2. Host: s3.dualstack.us-west-2.amazonaws.com
3. Date: Mon, 11 Apr 2016 12:00:00 GMT
4. x-amz-date: Mon, 11 Apr 2016 12:00:00 GMT
5. Authorization: {{authorization string}}
```

Para obter mais informações sobre endpoints de pilha dupla, consulte [Usar endpoints de pilha dupla do Amazon S3](dual-stack-endpoints.md). 

Para obter mais informações sobre como fazer solicitações usando a API REST, consulte os tópicos a seguir.

**Topics**
+ [Criar nomes de host do S3 para solicitações de API REST](#constructing-hostname-rest-api-requests)
+ [Solicitações de estilo de hospedagem virtual e caminho](#virtual-hosted-path-style-requests)
+ [Fazer solicitações para endpoints de pilha dupla usando a API REST](#rest-api-dual-stack)
+ [Redirecionamento de solicitação e a API REST](RESTRedirect.md)
+ [Roteamento de solicitação](UsingRouting.md)