> ## Documentation Index
> Fetch the complete documentation index at: https://docs.basaltic.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Servir um certificado

> Anexar um certificado a um ouvinte HTTPS: multi-SNI, o padrão e as duas remoções que um ouvinte recusa.

<a id="serving-a-certificate" />

## Servir um certificado

Anexe o certificado a um ouvinte HTTPS por CRN, UUID ou nome exato em sua conta:

<Tabs>
  <Tab title="Console">
    Abra o ouvinte do balanceador de carga e use o cartão **TLS certificates** — **Select one or more certificates**. Um ouvinte HTTPS se recusa a ficar sem um: **HTTPS listeners need at least one certificate**.
  </Tab>

  <Tab title="API">
    ```bash theme={null}
    POST /v1/load-balancers/{id}/listeners/{listener_id}/certificates
    { "certificate": "crn:certificate::my-account:certificate/prod-frontend",
      "is_default": true }
    ```
  </Tab>

  <Tab title="CLI">
    ```bash theme={null}
    basaltic loadbalancer listener attach-certificate <id> <listener-id> \
      --certificate crn:certificate::my-account:certificate/prod-frontend \
      --is-default
    ```
  </Tab>

  <Tab title="Go">
    ```go theme={null}
    l, err := loadbalancer.New(cfg).AttachListenerCertificate(ctx, lbID, listenerID,
        &loadbalancer.AttachListenerCertificateRequest{
            Certificate: "crn:certificate::my-account:certificate/prod-frontend",
            IsDefault:      basaltic.Bool(true),
        })
    ```

    O CRN é a solicitação completa — nenhum material chave viaja aqui.
  </Tab>
</Tabs>

Um ouvinte pode manter vários certificados e escolhe um por conexão, combinando o SNI do cliente com as SANs de cada certificado. O marcado `is_default` é o fallback para um cliente cujo SNI não corresponde a nada, ou que não envia nenhum SNI. Definir um novo padrão degrada o anterior na mesma transação.

<Warning>
  O desvinculamento de um certificado é recusado em dois casos: remover o **último** certificado de um ouvinte HTTPS e remover o **padrão atual** enquanto outros certificados ainda estão anexados. Promova uma substituição primeiro.
</Warning>

Para desconectar, use o anexo UUID do ouvinte (`certificates[].id`) em `DELETE /v1/load-balancers/{id}/listeners/{listener_id}/certificates/{certificate_id}`. Isso é diferente do UUID do certificado de origem.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.