---
title: Domínios, DNS e associação dos aplicativos
description: Escolha do endereço, verificação de propriedade e configurações nativas, web e de recuperação.
---

Cada domínio pertence a um aplicativo e a um usuário. O cadastro mantém separadas a propriedade (`ownership`), a configuração DNS (`dns`), o certificado (`https`), a disponibilidade dos links (`links`) e a publicação da configuração. Um campo ativo não substitui a verificação dos demais.

## Escolher o endereço

O modo `platform` reserva um prefixo do domínio disponibilizado pelo Agilink. A reserva permanece vinculada ao proprietário e ao aplicativo mesmo após desvincular o endereço, para impedir a apropriação de links antigos. Em homologação o endereço termina em `.links.staging.agilink.io`.

O modo `managed` usa um domínio próprio cuja zona poderá ser administrada pelo Agilink. A conexão apresenta a prova de propriedade e os nameservers necessários. Siga os dados devolvidos pelo sistema; a propagação e a ativação podem exigir novas verificações.

O modo `external` mantém o DNS no provedor do usuário. O sistema informa os registros de conexão e verificação, conforme a modalidade disponível. Esse modo não oferece edição da zona pela API do Agilink. A disponibilidade é controlada pelo ambiente: consulte `/domain-options` e `/domains/{domainId}/capabilities`.

:::caution[Limites da homologação A3b]
A homologação usa uma zona preexistente e uma subárvore isolada. A criação de zonas e o provisionamento SaaS de domínios externos estão desabilitados; `/domain-options` oferece apenas `platform` para novas conexões. Pedidos de outros modos retornam `403 feature_disabled`. O teste de edição DNS usa uma autorização sintética nessa subárvore; isso não comprova a transferência de nameservers de um domínio de cliente. Os fluxos de negócio possuem verificações locais adicionais.
:::

## Associar Android e iOS

A configuração nativa informa pacote Android, impressões digitais do certificado, identidade iOS e prefixos de rotas aceitos. Use os valores do aplicativo publicado. Uma impressão digital incorreta pode manter o endereço acessível no navegador sem abrir o aplicativo.

`native-config` atualiza a parte nativa; `web-config` configura o aplicativo web e o prefixo de rota; `recovery-config` configura a recuperação. Cada atualização preserva as outras partes. As três usam a revisão atual do domínio, portanto consulte novamente antes de uma alteração seguinte.

Quando há aplicativo web configurado, a resolução pode selecionar sua página web. Para conferir a personalização da página Android/iOS, use um cenário que resolva para essa página nativa; o teste de uma modalidade não comprova as outras.

Salvar uma configuração inicia a projeção pública. Consulte `publication` para acompanhar a confirmação e depois teste os arquivos de associação, o link e o aplicativo em um aparelho. O diagnóstico retorna `deviceAssociationTested: false` e `appClipVerified: false`: a API não transforma uma gravação de configuração em teste de dispositivo.

## Administrar registros DNS

A edição exige modo administrado, propriedade verificada, zona autorizada, permissão da credencial e nome pertencente ao domínio. A lista identifica registros protegidos e suas restrições. A API permite A, AAAA, CNAME, TXT e MX, respeitando as regras do provedor e do produto.

Criar um registro usa o ETag do domínio. Alterar ou excluir usa o ETag do registro, derivado da versão consultada no provedor. Se o registro mudar entre a consulta e a execução, o sistema recusa a versão antiga. A execução acontece por operação assíncrona; um `202` ainda não confirma que o provedor aplicou a mudança.

## Verificar e desvincular

Uma verificação explícita consulta a situação atual e pode aguardar propagação. Desvincular exige revisão e ausência de links ou domínio padrão do aplicativo que dependam do endereço. O sistema preserva a reserva e o histórico. Consulte a operação até seu estado final e verifique o domínio novamente.

Veja o [guia de integração](/api/dominios-templates-publicacao/) e os [requests e responses dos endpoints](/api/endpoints-a3b/).
