# Claves y alcances

## Crear una clave

En **Configuración › API**, un administrador crea la clave y elige:

- **Nombre:** el sistema que la usará (ej.: "ERP de la empresa").
- **Entorno:** **Producción** actúa de verdad; **Prueba** lo simula todo ([Modo de prueba](/es/desarrolladores/modo-prueba/)).
- **Qué puede hacer la clave:** los alcances de abajo. Una llamada fuera de los alcances de la clave devuelve `403 insufficient_scope`, con los alcances que sirven en `details.required`.
- **Enviar campañas sin esperar aprobación:** sin esto, las campañas de esta clave siguen la regla de aprobación de la empresa (el presupuesto siempre vale).
- **Válida hasta** y **solo desde estas direcciones IP**, opcionales.

La clave entera se muestra una sola vez, al crearla. Guárdela como una contraseña. Las claves de producción empiezan con `dt_live_`, las de prueba con `dt_test_`.

## Autenticar

Envíe la clave en cada llamada:

```http
Authorization: Bearer dt_live_...
```

`Authorization: ApiKey dt_live_...` también funciona. La empresa viene de la dirección (`/v1/c/{empresa}/...`) y debe ser la de la clave.

## Alcances

| Grupo | Alcance | Qué permite |
|---|---|---|
| Campañas | `campaigns:read` | Ver campañas y resultados |
| Campañas | `campaigns:write` | Crear y editar borradores |
| Campañas | `campaigns:send` | Enviar, pausar y cancelar |
| Contactos | `contacts:read` | Ver contactos y los valores de los campos |
| Contactos | `contacts:write` | Crear y actualizar contactos |
| Contactos | `fields:read` | Ver la lista de campos |
| Contactos | `fields:write` | Crear campos |
| Contactos | `contacts:delete` | Borrar datos de contactos (LGPD) |
| Plantillas | `templates:read` | Ver plantillas |
| Plantillas | `templates:write` | Crear plantillas y enviarlas a Meta |
| Mensajes y conversaciones | `messages:send_template` | Enviar plantillas |
| Mensajes y conversaciones | `messages:send_text` | Enviar texto y archivos (ventana de 24 h) |
| Mensajes y conversaciones | `conversations:read` | Ver conversaciones y mensajes |
| Mensajes y conversaciones | `conversations:write` | Cerrar y reabrir conversaciones |
| Flujos y agenda | `flows:start` | Iniciar flujos |
| Flujos y agenda | `appointments:read` | Ver citas |
| Flujos y agenda | `appointments:write` | Agendar, reprogramar y cancelar citas |
| Otros | `webhooks:manage` | Gestionar avisos (webhooks) |
| Otros | `reports:read` | Ver informes y costos |
| Otros | `workspace:read` | Ver números, equipos y etiquetas |
| Otros | `integrations:outboundpro` | Conectar OutboundPro Conversas |

## Claves antiguas

Las claves creadas antes de los alcances (`dsf_live_...`) siguen funcionando con el acceso de integración que tenían. Al elegir alcances para una de ellas, queda limitada a ellos.

## Seguridad

- Una clave por sistema, con el mínimo de alcances.
- Si una clave se filtra, revóquela en Configuración › API: deja de funcionar al instante.
- La creación, edición y revocación quedan en la Auditoría, con quién lo hizo.
