Configurar apps de correo mediante API y MCP
Obtén ajustes seguros de IMAP, SMTP y DAV, carpetas delegadas, estado de envío y perfiles de Apple Mail mediante la API o MCP de TrekMail.
Detalles del artículo
Tipo, dificultad, planes e información de última actualización.
▼
Detalles del artículo
Tipo, dificultad, planes e información de última actualización.
- Tipo
- Referencia
- Dificultad
- Intermedio
- Planes
- Starter · Pro · Agency
- Última actualización
- 10 de oct. de 2026
TrekMail ofrece mediante REST y MCP los mismos datos de conexión de Apps y dispositivos que utiliza el panel. Ambas interfaces son de solo lectura y requieren acceso de lectura al buzón.
Nunca devuelven la contraseña del buzón, una contraseña de aplicación ni las credenciales de un proveedor SMTP personalizado. El usuario introduce una contraseña de aplicación directamente en su app de correo, o la contraseña del buzón si este aún la acepta. Aunque un dominio envíe los mensajes salientes mediante un proveedor personalizado, las aplicaciones externas los entregan al endpoint SMTP público de TrekMail; TrekMail aplica internamente la ruta privada del dominio.
Obtener los ajustes de conexión
GET /api/v1/mailboxes/{mailbox_id}/client-setup?lang=en
Authorization: Bearer tm_live_...
Alcance interno necesario: mailboxes:read. Se aplican las restricciones opcionales domain_ids y mailbox_ids del token.
La respuesta contiene:
- host IMAP entrante, puerto SSL, nombre de usuario y estado de disponibilidad;
- host SMTP saliente, puerto SSL, nombre de usuario y estado de disponibilidad;
- URL del servidor DAV para calendarios y contactos, su estado de conexión y si la dirección devuelta incluye la marca;
- las mismas guías localizadas de tres pasos para Gmail, Outlook, Apple Mail, Thunderbird e IMAP genérico que aparecen en Apps y dispositivos;
sending.mode:platform,profileonot_configured;sending.reason: un motivo estable y legible por máquinas cuando el correo saliente no está listo;apple_mail_profile.available, que solo estruecuando la recepción y el envío están listos;shared_mailboxes.native_access_enabled,namespace,items[];authentication.client_auth_mode:app_password_onlyopassword_or_app_password;authentication.accepted_passwords:["app_password"]o["mailbox_password", "app_password"], respectivamente;authentication.app_passwords_endpoint: el endpoint de gestión de contraseñas de aplicación del buzón;password_included: falsecomo garantía explícita de seguridad.
shared_mailboxes.items[] solo incluye miembros con el permiso Leer cuando el acceso nativo a carpetas está habilitado. delegated_send_addresses es una lista aparte de direcciones del equipo disponibles en el campo De con id, email y display_name; puede estar vacía. No da acceso a carpetas ni comprueba que se pueda enviar. Estas direcciones no son identidades de la Message API. Usa los servidores devueltos, también en White Label, en vez de copiar el servidor de la plataforma.
Cada elemento de buzón compartido delegado contiene valores duraderos native_access_status/native_access_ready, rutas estándar exactas en folders, valores operations impuestos por el servidor y valores efectivos send_as_ready/send_as_reason. can_send sigue representando el permiso Enviar como asignado por el administrador; puede ser true aunque SMTP no esté disponible, por lo que la automatización debe comprobar ambos campos de disponibilidad. Si el buzón miembro está inactivo, tiene el inicio de sesión suspendido o el acceso directo desactivado, el buzón compartido sigue apareciendo, pero su motivo de Enviar como será mailbox_unavailable, mailbox_login_suspended o direct_login_unavailable. El campo heredado folder conserva la ruta exacta de la bandeja de entrada. Espera a native_access_ready=true antes de guiar al usuario durante la configuración.
SMTP transporta una respuesta o un reenvío, pero no guarda su copia en Enviados. Por eso, sent_copy.smtp_saves_copy es false; configura el cliente para que añada la copia a sent_copy.folder (el mismo valor que folders.sent) y todo el equipo pueda verla. folders.archive y folders.junk son destinos exactos cuando un cliente no asigna automáticamente Archivo o Spam. Mover un mensaje a Correo no deseado no garantiza por sí solo el entrenamiento del clasificador de spam del servidor.
Solicita siempre este endpoint con el ID del buzón miembro normal y autentica el cliente con la dirección y contraseña de aplicación propias de ese miembro, o la contraseña del buzón si se acepta. No crees una segunda cuenta ni intentes autenticarte directamente con la dirección compartida.
La lista de carpetas shared_mailboxes describe el acceso nativo de quienes pueden leer el buzón. Si items está vacío, comprueba el acceso nativo y Leer. Una lista vacía no demuestra que se haya retirado todo acceso a direcciones compartidas. No se devuelve ninguna contraseña.
El parámetro opcional lang acepta los mismos 13 idiomas que el endpoint del perfil de Apple. Si se omite, TrekMail utiliza Accept-Language y después la configuración regional predeterminada. Cada guía tiene un id estable, tres steps localizados y una action: use_server_settings o download_apple_profile.
connection_status=receiving_only no indica una configuración completa correcta. Configura o restaura la ruta saliente del dominio antes de indicar al usuario que conecte un cliente que valide ambos servidores.
connection_status=unavailable significa que el ciclo de vida del buzón ha cambiado y ya no puede autenticarse directamente. No utilices las coordenadas del servidor devueltas ni ofrezcas un perfil de Apple Mail; actualiza primero el estado del buzón.
Descargar un perfil de Apple Mail
GET /api/v1/mailboxes/{mailbox_id}/apple-mail-profile?lang=en
Authorization: Bearer tm_live_...
Accept: application/x-apple-aspen-config
La respuesta es un archivo adjunto .mobileconfig. Los valores de lang admitidos son en, es, fr, de, pt, it, nl, ru, zh, ja, ko, ar y he. Si se omite lang, TrekMail utiliza Accept-Language y después la configuración regional predeterminada.
El perfil contiene los ajustes IMAP y SMTP, pero ningún campo de contraseña. Apple solicita una contraseña durante la instalación: usa una contraseña de aplicación para app_password_only, o cualquiera de las dos contraseñas aceptadas para password_or_app_password. TrekMail devuelve 409 mail_client_setup_not_ready en lugar de generar un perfil engañoso mientras el correo saliente no está disponible.
Crea una contraseña de aplicación en el webmail, en Configuración, Contraseñas de aplicación, o en el panel, en Buzones, (buzón), Seguridad, Contraseñas de aplicación. El endpoint de configuración de solo lectura no crea ninguna. Para los endpoints REST y las herramientas MCP que gestionan estas contraseñas y el modo de inicio de sesión, consulta Contraseñas de aplicación por API y MCP.
Herramientas MCP
Las herramientas utilizan los mismos endpoints REST y reglas de autorización:
| Herramienta | Resultado |
|---|---|
get_mail_client_setup |
Ajustes del servidor sin contraseña, disponibilidad real del envío y del acceso nativo, carpetas estándar compartidas exactas y operaciones, y cinco guías localizadas para un mailbox_id normal; acepta una locale opcional de 13 idiomas. |
get_apple_mail_profile |
file_name, media_type, encoding: "base64" y content_base64; acepta una locale opcional de 13 idiomas. |
Los transportes MCP devuelven contenido estructurado de herramientas, no una descarga del navegador. Decodifica content_base64 como bytes y guárdalo con file_name; no lo interpretes como JSON o UTF-8 antes de decodificarlo.
Ambas herramientas requieren el alcance OAuth alojado mail:read, que se amplía al alcance interno mailboxes:read. Son de solo lectura y no dependen de ninguna variable de entorno de operaciones destructivas en el servidor stdio autoalojado.
Errores
| Código | Significado |
|---|---|
not_found |
El buzón no existe o está fuera de las restricciones de la cuenta o del token. |
mailbox_unavailable |
El buzón está inactivo. |
direct_login_unavailable |
El ID indicado corresponde a un buzón compartido. Solicita la configuración de uno de sus buzones miembro normales y consulta shared_mailboxes.items. |
mail_client_setup_not_ready |
Se solicitó el perfil de Apple antes de que el correo saliente estuviera listo; consulta error.reason. |
forbidden |
Al token le falta mailboxes:read o su plan ya no permite ese alcance. |
El endpoint de configuración puede devolver estos valores de sending.reason: mailbox_unavailable, direct_login_unavailable, domain_unavailable, domain_deprovisioning, account_suspended, email_verification_required, mailbox_sending_disabled, smtp_not_configured, managed_smtp_not_in_plan, managed_smtp_entitlement_inactive, smtp_profile_unavailable o smtp_route_invalid.
Artículos relacionados
Ve a guías cercanas que continúan el flujo de trabajo.