Resumen del Servidor
Estado actual e indicadores de dispositivos Apple enrolados.
Total Enrolados
0Dispositivos registrados
Dispositivos Activos
0Conectados al servicio
Sin Perfil Asignado
0Requieren atención
Perfiles Creados
0En la biblioteca local
Dispositivos Recientes
Ver todos| Nombre | Modelo | S/N | OS | Estado | Acción |
|---|---|---|---|---|---|
| Buscando dispositivos... | |||||
Actividad de Comandos
Ver historialBuscando historial...
| Nombre del Dispositivo | Modelo | Número de Serie | IMEI | Versión OS | Última Conexión | Estado | Acción |
|---|---|---|---|---|---|---|---|
| Cargando dispositivos... | |||||||
| Nombre del Dispositivo | Modelo | Número de Serie | Versión OS | Enrolado el | Última Conexión | Acción |
|---|---|---|---|---|---|---|
| No hay dispositivos en esta categoría. | ||||||
Subir Perfil de Configuración
Sube archivos .mobileconfig generados por Apple Configurator o herramientas de perfiles.
Perfiles en Biblioteca
No hay perfiles subidos en el sistema.
| Fecha / Hora | ID de Comando | UDID Dispositivo | Tipo de Comando | Código PIN / Extra | Estado |
|---|---|---|---|---|---|
| Buscando historial de comandos... | |||||
1. Descargar Certificado Público
Es un único certificado. Descárgalo y súbelo en Apple Business Manager al registrar (o reemplazar) el servidor MDM — ahí solo hay un campo para subir el archivo, y Apple lee tanto .pem como .der indistintamente. Sube uno solo, no ambos.
¿Apple te pide .der en vez de .pem? Descárgalo aquí
Aún no se ha generado ninguna clave.
2. Vincular Token de Servidor
Sube aquí el archivo Server_Token_....p7m que descargaste desde Apple Business Manager tras registrar la clave pública.
3. Crear Perfil de Inscripción en Apple
Registra la URL de matriculación de esta empresa como el perfil DEP predeterminado en Apple Business Manager. Solo se hace una vez por empresa.
Vincular Certificado Push Dedicado (APNs)
Obtenido vía mdmcert.download con la Apple ID propia de la empresa, independiente de su vínculo DEP/ABM. Sube aquí el archivo combinado de certificado + llave privada (.pem).
Nueva Empresa
Crea una empresa con su propio DEP y usuario administrador. La empresa solo verá sus propios dispositivos y perfiles. No necesita certificado push propio — usa el del servidor.
Empresas
| Nombre | Admin | DEP Name | Push Topic | Dispositivos | Perfiles | Acción |
|---|---|---|---|---|---|---|
| Cargando empresas... | ||||||
Nueva Credencial de API
Crea una credencial (MDM Key + MDM Secret) para conectar un sistema externo — por ejemplo tu sistema de crédito o cobranza — con este servidor MDM.
Credenciales de API
| Nombre | MDM Key | Estado | Creado | Último uso | Acción |
|---|---|---|---|---|---|
| No hay credenciales de API creadas. | |||||
Autenticación
Todas las llamadas a /api/v1/... usan HTTP Basic Auth: el MDM Key como usuario y el MDM Secret como contraseña. Genera una credencial en la pestaña API. El secreto solo se muestra una vez al crearlo.
curl -u "MDM_KEY:MDM_SECRET" https://mdm.herrod.vip/api/v1/devices
Límite: 60 solicitudes por minuto por credencial. Si lo excedes recibirás 429 Too Many Requests. Una credencial deshabilitada o eliminada devuelve 401 Unauthorized de inmediato.
Cómo bloquear/desbloquear un equipo por impago
Usa los endpoints de Perfiles (abajo), no los de "Comandos Remotos". /lock y /unlock controlan el código de acceso nativo de iOS (para cuando alguien olvidó su clave) — no sirven para bloquear un equipo financiado: si el teléfono no tiene un código de acceso configurado (lo normal en un equipo nuevo), /lock no hace nada visible y Apple responde MessageResult: NoPasscodeSet.
El bloqueo por impago se hace instalando/quitando un perfil de restricciones (ej. "iPhone Bloqueado"), que limita el equipo a una lista de apps permitidas sin importar si tiene clave o no:
- Consulta
GET /api/v1/profilespara obtener eliddel perfil "Bloqueado" de tu empresa — los IDs son distintos por empresa, no los hardcodees. - Para bloquear:
POST /api/v1/devices/{udid}/profiles/{id}/install - Para liberar:
POST /api/v1/devices/{udid}/profiles/{id}/remove
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/355373080335450/profiles/2/install
Dispositivos
En todos los endpoints de abajo, {udid} acepta el UDID de Apple, el número de serie, o el IMEI del dispositivo — lo que tengas registrado sirve, no hace falta conocer el UDID.
/api/v1/devicesLista todos los dispositivos enrolados, con sus perfiles asignados.
curl -u "$KEY:$SECRET" https://mdm.herrod.vip/api/v1/devices
/api/v1/devices/{udid}Detalle de un dispositivo específico, por UDID, número de serie, o IMEI.
curl -u "$KEY:$SECRET" https://mdm.herrod.vip/api/v1/devices/355373080335450
Perfiles de Configuración
/api/v1/profilesLista los perfiles disponibles en la biblioteca (ej. "iPhone Bloqueado", "iPhone Desbloqueado") con su id.
curl -u "$KEY:$SECRET" https://mdm.herrod.vip/api/v1/profiles
/api/v1/devices/{udid}/profiles/{profile_id}/installPoner perfil. Encola la instalación del perfil indicado en el dispositivo (ej. aplicar el perfil de bloqueo por impago).
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/profiles/2/install
/api/v1/devices/{udid}/profiles/{profile_id}/removeQuitar perfil. Encola la eliminación del perfil indicado del dispositivo (ej. liberar el equipo al ponerse al día con el pago).
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/profiles/2/remove
Comandos Remotos
/api/v1/devices/{udid}/lockBloquea el dispositivo remotamente (DeviceLock). La respuesta incluye el pin generado — guárdalo, es necesario para desbloquear físicamente el equipo. No usar para bloqueo por impago — si el equipo no tiene código de acceso configurado, Apple no fija uno nuevo y no pasa nada visible. Para eso usa la sección "Perfiles de Configuración", arriba.
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/lock
/api/v1/devices/{udid}/unlockQuitar clave. Limpia el código de acceso del dispositivo (ClearPasscode), usando el UnlockToken reportado por el equipo. Es lo contrario de /lock, no de un perfil de bloqueo.
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/unlock
/api/v1/devices/{udid}/eraseEnvía un borrado de fábrica (EraseDevice). Irreversible. La respuesta incluye el pin de FindMy generado.
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/erase
/api/v1/devices/{udid}/refreshRefrescar. Envía un push de APNs para que el dispositivo se conecte de inmediato y procese los comandos pendientes.
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/refresh
/api/v1/devices/{udid}/statusSolicita información actualizada del dispositivo (modelo, OS, supervisión, etc).
curl -u "$KEY:$SECRET" -X POST https://mdm.herrod.vip/api/v1/devices/{udid}/status
Estado de un Comando
/api/v1/commands/{command_uuid}Los comandos anteriores son asíncronos (se encolan hasta que el dispositivo se conecta). Usa el command_uuid devuelto para consultar si ya se ejecutó (Queued, Acknowledged, Error, NotNow).
curl -u "$KEY:$SECRET" https://mdm.herrod.vip/api/v1/commands/{command_uuid}