# Panel de marca blanca

> Muestra la marca de tu agencia en el panel, los correos y la página de bloqueo, sirve el panel en tu dominio y usa tus propios servidores de nombres.

La marca blanca sustituye la identidad de OpenWAF por la de tu agencia. Tiene tres partes independientes, todas en
**Marca blanca** y todas gestionadas por administradores de toda la organización:

| Parte | Qué ven tus clientes |
|---|---|
| [Marca](#brand) | Tu nombre, tu logotipo, tu color de acento y tu correo de soporte |
| [Dominio del panel](#dashboard-domain) | El panel en `dash.tuagencia.com`, con tu marca |
| [Servidores de nombres propios](https://developers.openwaf.dev/es/dns/custom-nameservers/) | `ns1.tuagencia.com` y `ns2.tuagencia.com` en lugar de `*.ns.openwaf.dev` |

## Marca

La marca se usa:

- en el panel, cuando se abre en tu [dominio del panel](#dashboard-domain);
- en los correos de entrada que se envían desde ese panel;
- en los correos de la puerta de acceso de tus dominios;
- en la página de bloqueo **con marca** de tus dominios.

**Panel**

En **Marca blanca › Marca**, escribe el **Nombre visible**, el **Color de acento** (`#rrggbb`) y el
**Correo de soporte**, y pulsa **Guardar marca**. En **Logotipo**, elige un fichero SVG o PNG y pulsa
**Subir logotipo**.
**CLI**

```sh
openwaf-cloud ctl brand set name="Acme Digital" accent=#2456e8 support_email=soporte@example.com --reason "Marca"
openwaf-cloud ctl brand show
```
Sube el logotipo desde el panel o la API.
**API**

```sh
curl -X PUT "https://dash.openwaf.dev/v1/orgs/$ORG/brand" \
  -H "Authorization: Bearer $OPENWAF_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Acme Digital", "accent": "#2456e8", "support_email": "soporte@example.com"}'

curl -X PUT "https://dash.openwaf.dev/v1/orgs/$ORG/brand/logo" \
  -H "Authorization: Bearer $OPENWAF_TOKEN" \
  -H "Content-Type: image/svg+xml" \
  --data-binary @logo.svg
```


- Nombre visible: hasta 100 caracteres, sin saltos de línea ni corchetes angulares.
- Color de acento: `#rrggbb`. El panel avisa cuando el texto blanco de los botones no alcanzaría el contraste WCAG AA
  (4,5:1) sobre ese color.
- Logotipo: SVG o PNG, hasta 256 KB (PNG de hasta 4096×4096 píxeles). Los SVG se sanean: se quitan scripts,
  manejadores de eventos y referencias externas, así que revisa el resultado tras subirlo. Guarda el nombre y el color
  antes que el logotipo.

## Dominio del panel

Sirve el panel en un nombre de host que controles, por ejemplo `dash.tuagencia.com`.

1. En **Marca blanca › Dominio propio del panel**, escribe el **Nombre de host** y pulsa **Guardar dominio**. Usa un
   subdominio: un CNAME no puede estar en la raíz de un dominio.
2. En el proveedor de DNS de `tuagencia.com`, crea el registro que se indica:

   ```text
   dash.tuagencia.com.  CNAME  custom.openwaf.dev.
   ```

   Si tu proveedor de DNS ofrece un proxy para los registros (como la nube naranja de Cloudflare), desactívalo en este.
3. Pulsa **Comprobar ahora**. Cuando el CNAME resuelve, el estado pasa de **Pendiente** a **Activo** y OpenWAF emite
   el certificado HTTPS automáticamente (Let's Encrypt). No hay que subir nada.


Los mismos pasos desde la CLI: `openwaf-cloud ctl whitelabel domain dash.tuagencia.com --reason "…"` y después
`openwaf-cloud ctl whitelabel verify`. En la API: `PUT /v1/orgs/{org}/whitelabel/domain` con `{"host": "…"}` y después
`POST /v1/orgs/{org}/whitelabel/domain/verify`.

Cómo se comporta:

- En tu dominio solo se entra con el código por correo. Google y GitHub solo se ofrecen en `dash.openwaf.dev`.
- Los correos de entrada pedidos en tu dominio llevan tu marca solo para quien ya es miembro de tu organización; a
  cualquier otra persona le llega el correo estándar de OpenWAF. El enlace del correo abre siempre `dash.openwaf.dev`;
  el código de 6 cifras sirve en cualquiera de los dos.
- OpenWAF vuelve a comprobar el CNAME cada hora. Si ya no apunta a `custom.openwaf.dev`, el dominio pasa a **Error** y
  deja de servir el panel hasta que corrijas el registro y lo compruebes de nuevo.
- Un nombre de host dentro de un dominio activo de otra organización de OpenWAF se rechaza con `409 host_taken`.

Para dejar de usarlo, pulsa **Quitar dominio**; después puedes borrar el CNAME.

## Servidores de nombres propios

Da a tus clientes servidores de nombres con tu nombre. Hace falta un registro TXT de propiedad y registros de dirección
en tu dominio: consulta [Servidores de nombres propios](https://developers.openwaf.dev/es/dns/custom-nameservers/).
