Documentación
Resumen de la API y OAuth
AnnexGroup proporciona una API REST en /api/v1/.
Autenticación
- Cookie de sesión: Para solicitudes de la interfaz web
- OAuth 2.0: Para aplicaciones de terceros
- Token de API / Access Tokens: Para scripts, sistemas externos y agentes de IA
Gestión de Access Tokens
En Configuración → Tokens de acceso se pueden crear tokens personales. Los administradores pueden además emitir en Administración → Tokens de acceso de administrador tokens de administrador del servidor con ámbitos (permisos) muy específicos.
Ámbitos de administrador posibles:
admin– Acceso completo de administradoradmin:read– API de administración de solo lecturaadmin:write– API de administración de escrituraadmin:users,admin:agents,admin:domains,admin:queue,admin:security,admin:license,admin:backup,admin:settings,admin:mail
Los Access Tokens son especialmente adecuados para:
- Scripts de automatización (copias de seguridad, supervisión, informes)
- Administración externa a través de la API REST
- Agentes de IA que pueden leer o ajustar configuraciones del servidor
API de Access Tokens de administrador
| Método | Endpoint | Descripción |
|---|---|---|
| GET | /api/v1/admin/tokens |
Listar los tokens de administrador propios |
| POST | /api/v1/admin/tokens |
Crear un nuevo token de administrador |
| DELETE | /api/v1/admin/tokens/{id} |
Revocar un token de administrador |
Ejemplo de creación de un token:
curl -H "Authorization: Bearer $ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"Monitoring-Agent","scopes":["admin:read","admin:queue"],"expires_in_days":90}' \
https://annexgroup.example/api/v1/admin/tokens
La respuesta contiene el token en texto claro una sola vez:
{"token":"ag_...","expires_at":"2026-10-28T12:00:00Z"}
API de administración
Todas las funciones administrativas también están disponibles a través de la API REST:
| Método | Endpoint | Descripción |
|---|---|---|
| GET | /api/v1/admin/users |
Listar usuarios |
| POST | /api/v1/admin/domains |
Crear un dominio |
| GET | /api/v1/admin/queue |
Mostrar la cola de correo |
| POST | /api/v1/admin/security/preset |
Aplicar un perfil de seguridad |
Registrar aplicaciones OAuth
En Configuración → Aplicaciones OAuth los usuarios pueden registrar aplicaciones:
- Indicar el nombre de la aplicación y la URI de redirección
- Recibir el Client-ID y el Client-Secret
- Asignar los ámbitos según el principio de mínimo privilegio
Puntos finales importantes
| Método | Endpoint | Descripción |
|---|---|---|
| GET | /api/v1/mailboxes |
Listar buzones |
| GET | /api/v1/messages |
Obtener correos |
| POST | /api/v1/messages |
Enviar correo |
| GET | /api/v1/contacts |
Listar contactos |
| GET | /api/v1/events |
Obtener citas |
Las especificaciones OpenAPI se encuentran en:
- AnnexTalk Wire Protocol:
docs/talk-protocol/v1/openapi.yaml - Admin API:
docs/openapi-admin.yaml
Integraciones de ejemplo
En examples/api-admin/ encontrará:
annexgroup_admin.py— Herramienta declarativa en Python para usuarios, dominios, alias y DKIMconfig.yaml— Configuración de ejemploansible/playbook.yml— Playbook de Ansible idempotente
Estos ejemplos sirven como punto de partida para flujos de trabajo de Infrastructure as Code.
¿Algo poco claro o mal descrito? Díganoslo — lo corregiremos. Su pregunta nos muestra dónde flojea el texto.