

# Migrar um nome de domínio personalizado para um tipo de endpoint de API diferente no API Gateway
<a name="apigateway-regional-api-custom-domain-migrate"></a>

 Você pode migrar seu nome de domínio personalizado entre endpoints regionais e otimizados para bordas. Não é possível migrar um nome de domínio personalizado público para um nome de domínio personalizado privado. Primeiro adicione o novo tipo de configuração de endpoint à lista `endpointConfiguration.types` existente para o nome de domínio personalizado. Em seguida, configure um registro DNS para apontar o nome de domínio personalizado para o endpoint recém-provisionado. Por fim, você remove o endpoint obsoleto do nome de domínio personalizado.

## Considerações
<a name="apigateway-regional-api-custom-domain-migration-considerations"></a>

Veja as considerações sobre como migrar o domínio personalizado entre um endpoint de API regional e um endpoint de API otimizado para borda:
+ Um nome de domínio personalizado otimizado para borda exige um certificado fornecido pelo ACM da região Leste dos EUA (N. da Virgínia): `us-east-1`. Esse certificado é distribuído por todas as localizações geográficas.
+ Um nome de domínio regional personalizado exige um certificado fornecido pelo ACM na mesma região que hospeda a API. Você pode migrar um nome de domínio personalizado otimizado para borda que não esteja na região `us-east-1` para um nome de domínio regional personalizado solicitando um novo certificado do ACM da região da API.
+ Pode levar até 60 segundos para concluir uma migração entre um nome de domínio personalizado otimizado para borda e um nome de domínio regional personalizado. O tempo de migração também depende de quando você atualiza os registros DNS.
+ Você só poderá adicionar uma configuração do endpoint adicional se o modo de acesso ao endpoint estiver definido como `BASIC`. Assim que você tiver duas configurações do endpoint, não poderá mais alterar o modo de acesso ao endpoint. Para obter mais informações, consulte [Modo de acesso ao endpoint](apigateway-security-policies.md#apigateway-security-policies-endpoint-access-mode).
+ Se seu nome de domínio personalizado utiliza uma política de segurança que comece com `SecurityPolicy_`, quando você adiciona um novo tipo de configuração do endpoint, o modo de acesso ao endpoint é o mesmo nos dois tipos, e você precisa escolher uma política de segurança que comece com `SecurityPolicy_` para o novo tipo de configuração do endpoint.

## Migrar nomes de domínios personalizados
<a name="apigateway-api-custom-domain-names-migrate-procedure"></a>

**nota**  
Para concluir a migração, remova o endpoint obsoleto do nome de domínio personalizado.

O procedimento a seguir mostra como migrar um nome de domínio personalizado otimizado para borda para um nome de domínio regional personalizado.

------
#### [ Console de gerenciamento da AWS ]

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 **Custom Domain Names (Nomes de domínios personalizados)** no painel de navegação principal. 

1. Escolha um nome de domínio personalizado otimizado para borda.

1. Em **Configuração de endpoint**, escolha **Editar**.

1. Escolha **Adicionar endpoint regional**.

1. Em **Certificado do ACM**, escolha um certificado.

   O certificado regional deve estar da mesma região da API regional.

1. Escolha **Salvar alterações**.

1. Configure um registro DNS para apontar o nome de domínio regional personalizado para esse nome de host regional. Consulte mais informações sobre [como configurar o Route 53 para encaminhar o tráfego ao API Gateway](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html).

1. Depois de confirmar que a configuração de DNS está usando o endpoint correto, você exclui a configuração de endpoint otimizado para borda. Escolha o nome de domínio personalizado e, em **Configuração de endpoint otimizado para borda**, escolha **Excluir**.

1. Confirme sua escolha e exclua o endpoint.

------
#### [ AWS CLI ]

O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo migra o nome de domínio personalizado otimizado para borda para um nome de domínio personalizado regional:

```
aws apigateway update-domain-name \
    --domain-name 'api.example.com' \
    --patch-operations  '[ 
        { "op":"add", "path": "/endpointConfiguration/types","value": "REGIONAL" },
        { "op":"add", "path": "/regionalCertificateArn", "value": "arn:aws:acm:us-west-2:123456789012:certificate/cd833b28-58d2-407e-83e9-dce3fd852149" }
      ]'
```

O certificado regional deve ser da mesma região da API regional. 

A saída será exibida da seguinte forma:

```
{
    "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/34a95aa1-77fa-427c-aa07-3a88bd9f3c0a",
    "certificateName": "edge-cert",
    "certificateUploadDate": "2017-10-16T23:22:57Z",
    "distributionDomainName": "d1frvgze7vy1bf.cloudfront.net",
    "domainName": "api.example.com",
    "endpointConfiguration": {
        "types": [
            "EDGE",
            "REGIONAL"
        ]
    },
    "regionalCertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/cd833b28-58d2-407e-83e9-dce3fd852149",
    "regionalDomainName": "d-fdisjghyn6.execute-api.us-west-2.amazonaws.com"
}
```

Para o nome de domínio personalizado regional migrado, a propriedade `regionalDomainName` resultante retorna o nome de host da API regional. Você deve configurar um registro DNS para apontar o nome de domínio personalizado regional para esse nome de host regional. Isso permite que o tráfego direcionado para o nome de domínio personalizado seja roteado para o host regional. 

Depois que o registro DNS for definido, você poderá remover o nome de domínio personalizado otimizado para borda. O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo remove o nome de domínio personalizado otimizado para borda.

```
aws apigateway update-domain-name \
    --domain-name api.example.com \
    --patch-operations '[
            {"op":"remove", "path":"/endpointConfiguration/types", "value":"EDGE"},
            {"op":"remove", "path":"certificateName"},
            {"op":"remove", "path":"certificateArn"}
        ]'
```

------

O procedimento a seguir mostra como migrar um nome de domínio personalizado otimizado para borda que use uma política de segurança aprimorada para um nome de domínio regional personalizado que também usa uma política de segurança aprimorada.

------
#### [ Console de gerenciamento da AWS ]

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 **Custom Domain Names (Nomes de domínios personalizados)** no painel de navegação principal. 

1. Escolha um nome de domínio personalizado otimizado para borda.

1. Em **Configuração de endpoint**, escolha **Editar**.

1. Escolha **Adicionar endpoint regional**.

1. Em **Certificado do ACM**, escolha um certificado.

   O certificado regional deve estar da mesma região da API regional.

1. Em **Política de segurança**, escolha uma política de segurança que comece com `SecurityPolicy_`.

1. Em **Modo de acesso ao endpoint**, escolha **Básico**.

1. Escolha **Salvar alterações**.

1. Configure um registro DNS para apontar o nome de domínio regional personalizado para esse nome de host regional. Consulte mais informações sobre [como configurar o Route 53 para encaminhar o tráfego ao API Gateway](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html).

1. Depois de confirmar que a configuração de DNS está usando o endpoint correto, você exclui a configuração de endpoint otimizado para borda. Escolha o nome de domínio personalizado e, em **Configuração de endpoint otimizado para borda**, escolha **Excluir**.

1. Confirme sua escolha e exclua o endpoint.

------
#### [ AWS CLI ]

O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo migra o nome de domínio personalizado otimizado para borda para um nome de domínio personalizado regional:

```
aws apigateway update-domain-name \
    --domain-name 'api.example.com' \
    --patch-operations  '[ 
        { "op":"add", "path": "/endpointConfiguration/types","value": "REGIONAL" },
        { "op":"replace", "path": "/securityPolicy", "value":"SecurityPolicy_TLS13_1_3_2025_09"},
        { "op":"add", "path": "/regionalCertificateArn", "value": "arn:aws:acm:us-west-2:123456789012:certificate/cd833b28-58d2-407e-83e9-dce3fd852149" }
      ]'
```

O certificado regional deve ser da mesma região da API regional. 

A saída será exibida da seguinte forma:

```
{
    "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/34a95aa1-77fa-427c-aa07-3a88bd9f3c0a",
    "certificateName": "edge-cert",
    "certificateUploadDate": "2017-10-16T23:22:57Z",
    "distributionDomainName": "d1frvgze7vy1bf.cloudfront.net",
    "domainName": "api.example.com",
    "endpointConfiguration": {
        "types": [
            "EDGE",
            "REGIONAL"
        ]
    },
    "securityPolicy": "SecurityPolicy_TLS13_1_3_2025_09",
    "endpointAccessMode": "BASIC",
    "regionalCertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/cd833b28-58d2-407e-83e9-dce3fd852149",
    "regionalDomainName": "d-fdisjghyn6.execute-api.us-west-2.amazonaws.com"
}
```

Para o nome de domínio personalizado regional migrado, a propriedade `regionalDomainName` resultante retorna o nome de host da API regional. Você deve configurar um registro DNS para apontar o nome de domínio personalizado regional para esse nome de host regional. Isso permite que o tráfego direcionado para o nome de domínio personalizado seja roteado para o host regional. 

Depois que o registro DNS for definido, você poderá remover o nome de domínio personalizado otimizado para borda. O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo remove o nome de domínio personalizado otimizado para borda.

```
aws apigateway update-domain-name \
    --domain-name api.example.com \
    --patch-operations '[
            {"op":"remove", "path":"/endpointConfiguration/types", "value":"EDGE"},
            {"op":"remove", "path":"certificateName"},
            {"op":"remove", "path":"certificateArn"}
        ]'
```

------

O procedimento a seguir mostra como migrar um nome de domínio personalizado regional para um nome de domínio personalizado otimizado para borda.

------
#### [ Console de gerenciamento da AWS ]

1. Faça login no console do API Gateway em [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1. No painel de navegação principal, selecione **Nomes de domínio personalizados**.

1. Escolha um nome de domínio regional personalizado.

1. Em **Configuração de endpoint**, escolha **Editar**.

1. Escolha **Adicionar endpoint otimizado para borda**.

1. Em **Certificado do ACM**, escolha um certificado.

    O certificado de domínio otimizado para bordas deve ser criado na região `us-east-1`. 

1. Escolha **Salvar**.

1. Configure um registro DNS para apontar o nome de domínio personalizado otimizado para borda para esse nome de host otimizado para borda. Consulte mais informações sobre [como configurar o Route 53 para encaminhar o tráfego ao API Gateway](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html).

1. Depois de confirmar que a configuração de DNS está usando o endpoint correto, você exclui a configuração de endpoint regional. Escolha o nome de domínio personalizado e, em **Configuração de endpoint (regional)**, escolha **Excluir**.

1. Confirme sua escolha e exclua o endpoint.

------
#### [ AWS CLI ]

O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo migra o nome de domínio personalizado regional para um nome de domínio personalizado otimizado para borda:

```
aws apigateway update-domain-name \
    --domain-name 'api.example.com' \
    --patch-operations  '[ 
        { "op":"add", "path": "/endpointConfiguration/types","value": "EDGE" },
        { "op":"add", "path": "/certificateName", "value": "edge-cert" },
	{"op":"add", "path": "/certificateArn", "value": "arn:aws:acm:us-east-1:738575810317:certificate/34a95aa1-77fa-427c-aa07-3a88bd9f3c0a"}
      ]'
```

O certificado de domínio otimizado para bordas deve ser criado na região `us-east-1`. 

A saída será exibida da seguinte forma:

```
{
    "certificateArn": "arn:aws:acm:us-east-1:738575810317:certificate/34a95aa1-77fa-427c-aa07-3a88bd9f3c0a",
    "certificateName": "edge-cert",
    "certificateUploadDate": "2017-10-16T23:22:57Z",
    "distributionDomainName": "d1frvgze7vy1bf.cloudfront.net",
    "domainName": "api.example.com",
    "endpointConfiguration": {
        "types": [
            "EDGE",
            "REGIONAL"
        ]
    },
    "regionalCertificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/3d881b54-851a-478a-a887-f6502760461d",
    "regionalDomainName": "d-cgkq2qwgzf.execute-api.us-east-1.amazonaws.com"
}
```

Para o nome de domínio personalizado especificado, o API Gateway retorna o nome de host da API otimizada para bordas como o valor da propriedade `distributionDomainName`. Você deve definir um registro DNS para apontar o nome de domínio personalizado otimizado para fronteiras para esse nome de domínio de distribuição. Isso permite que o tráfego direcionado para o nome de domínio personalizado otimizado para bordas seja roteado para o nome de host da API otimizada para bordas. 

Depois que o registro DNS for definido, você poderá remover o tipo de endpoint `REGION` do nome de domínio personalizado. O comando [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-domain-name.html) indicado abaixo remove o tipo de endpoint regional:

```
aws apigateway update-domain-name \
    --domain-name api.example.com \
    --patch-operations '[
        {"op":"remove", "path":"/endpointConfiguration/types", value:"REGIONAL"},
        {"op":"remove", "path":"regionalCertificateArn"}
      ]'
```

A saída será exibida como a seguir:

```
{
    "certificateArn": "arn:aws:acm:us-east-1:738575810317:certificate/34a95aa1-77fa-427c-aa07-3a88bd9f3c0a",
    "certificateName": "edge-cert",
    "certificateUploadDate": "2017-10-16T23:22:57Z",
    "distributionDomainName": "d1frvgze7vy1bf.cloudfront.net",
    "domainName": "api.example.com",
    "endpointConfiguration": {
        "types": "EDGE"
    }
}
```

------