Sí, Inmovilla tiene API. La API de Inmovilla (Inmovilla API REST v1) deja a un programa externo leer los inmuebles de tu cuenta: se llama por HTTPS a https://procesos.inmovilla.com/api/v1, se identifica con una cabecera HTTP llamada Token y responde en JSON. Para llevar una cartera a WordPress bastan dos peticiones: un listado ligero con todos los inmuebles y la ficha completa de cada uno.
Una aclaración antes de seguir: Inmovilla es un CRM inmobiliario de otra empresa. InmovillaToWordPress es un plugin independiente que usa esa API con el token de tu agencia; no es un producto de Inmovilla.
¿Inmovilla tiene API? Dónde está la documentación
La documentación pública de la API REST v1 está en procesos.apinmo.com/api/v1/apidoc. Es la referencia que tiene que leer tu desarrollador. Un detalle que despista: la documentación vive en un dominio (apinmo.com) y las peticiones van a otro (procesos.inmovilla.com).
El token lo sacas de tu propia cuenta de Inmovilla, en Ajustes → Opciones → Token para API Rest. Es la llave de los datos de tu agencia: trátalo como una contraseña y no lo pegues en correos ni en capturas de pantalla.
Cómo se autentica: la cabecera Token
No se entra con usuario y contraseña. Cada petición lleva el token en una cabecera HTTP. Las que hace InmovillaToWordPress llevan dos:
Token: la clave de tu cuenta.Accept: application/json: para recibir la respuesta en JSON.
Con eso, una petición completa es tan corta como GET https://procesos.inmovilla.com/api/v1/propiedades/?listado más la cabecera. Si el token no vale, la API responde con un error 401 y el plugin te lo dice sin rodeos: «API Token inválido».
Qué datos devuelve la API de Inmovilla
El listado: cinco datos por inmueble
GET /propiedades/?listado devuelve la cartera entera, pero con muy poco de cada inmueble:
cod_ofer: el código de oferta, el identificador interno del inmueble.ref: la referencia que usa tu equipo.nodisponible: si Inmovilla lo marca como no disponible.prospecto: si lo tiene como prospecto.fechaact: la fecha de su última modificación.
Llega ordenado por fecha de modificación, de lo más reciente a lo más antiguo. Ni precio, ni fotos, ni descripción: para eso hay que pedir la ficha. Parece poco, pero es justo lo que hace falta para saber qué ha cambiado sin preguntar por cada vivienda.
La ficha: GET /propiedades/?cod_ofer=N
Con el código de oferta se pide la ficha completa, que trae todo lo que la agencia ha rellenado. Una ficha real que usamos de referencia trae 237 campos. Entre los que lee el plugin:
- Título y descripción en cada idioma que la agencia haya escrito: español, inglés, alemán, francés, italiano y noruego.
- Precio de venta o de alquiler, superficies y dormitorios.
- Baños y aseos, en dos campos separados.
- Calle, código postal y coordenadas.
- Certificado energético: la letra de consumo y la de emisiones.
- Extras como ascensor, piscina, terraza o aire acondicionado.
- Lo necesario para las fotos: el número de agencia, el código de oferta, la letra de su carpeta (
fotoletra) y cuántas hay.
Dos detalles que conviene saber antes de programar nada. La descripción llega en un único campo con los párrafos separados por ~~: si no los conviertes, esas tildes acaban impresas en la ficha. Y las fotos no vienen como archivos adjuntos: la dirección de cada una se compone con esos datos y se descarga desde fotos15.inmovilla.com.
| Petición | Qué devuelve | Para qué sirve |
|---|---|---|
/propiedades/?listado | Código, referencia, disponibilidad, prospecto y fecha de modificación de toda la cartera | Saber qué hay, qué ha cambiado y qué ha desaparecido |
/propiedades/?cod_ofer=N | La ficha completa de un inmueble | Crear o actualizar esa vivienda en tu web |
Qué no trae la API de Inmovilla
Mejor saberlo antes de prometer nada en la web:
- El municipio escrito. La ficha trae
key_loca, un código numérico, no el nombre del pueblo o la ciudad. InmovillaToWordPress lo deduce de las categorías que ya tiene tu web o del propio anuncio; si no hay pistas, puede quedar vacío. - Los tours virtuales. La API v1 no expone enlaces de tours virtuales, Matterport incluido. Si los quieres en la ficha, se pegan a mano en WordPress.
- Traducciones. La API devuelve el texto que la agencia escribió en cada idioma. Si un idioma está vacío en Inmovilla, llega vacío: nadie lo traduce por el camino.
- El cupo en las cabeceras. Ninguna cabecera te dice cuántas peticiones te quedan. Te enteras cuando te rechaza.
Límites de peticiones: el famoso 408
Inmovilla limita cuántas peticiones de propiedades puedes hacer y lo comunica de una forma poco habitual: responde con un HTTP 408 y un mensaje que incluye la cifra del cupo. Esa cifra no es fija. En agosto de 2026 vimos «10 cada 1 minuto» y «50 cada 10 minutos» con el mismo token, con menos de un día de diferencia.
Para complicarlo, el mismo 408 se usa para un timeout de verdad. Solo el texto de la respuesta separa un caso del otro, y cada uno pide lo contrario: un timeout se reintenta; un «has superado el límite», no, porque reintentar gasta más cupo.
Así lo resuelve InmovillaToWordPress:
- Ritmo pausado desde el principio: 6 segundos entre peticiones más un margen del 25 %, es decir, una cada 7,5 segundos (unas 8 por minuto).
- Aprende del rechazo: lee la cifra del mensaje de Inmovilla y ajusta el ritmo. Si dice 50 cada 10 minutos, pasa a una petición cada 15 segundos. Se queda con el ritmo más prudente de las últimas 24 horas.
- Reintenta solo cuando toca: ante un timeout o un error 502, 503 o 504, hasta tres intentos en total, con esperas de 2 y 6 segundos. Si el 408 es por cupo, se detiene y te lo dice.
- Caché corta: guarda el listado 2 minutos y cada ficha 3, para no hacer dos veces la misma pregunta.
Haz la cuenta antes de la primera carga. Con 200 viviendas son 201 peticiones, el listado y 200 fichas: a 7,5 segundos, unos 25 minutos solo de esperas; si se aplica el cupo de 50 cada 10 minutos, unos 50. La cuenta no incluye la descarga de fotos, que va por otro servidor. A partir de ahí, cada pasada pide la ficha solo de lo nuevo o lo modificado, más un lote pequeño de repaso cada pocas pasadas por si algún cambio no movió la fecha, así que una cartera estable gasta pocas peticiones. Lo tienes más desarrollado en carteras grandes.
Cómo la aprovecha un plugin para llevar la cartera a WordPress
Todo lo anterior es lo que tendría que programar tu desarrollador si hiciera la conexión desde cero. InmovillaToWordPress lo trae resuelto y se configura desde el escritorio de WordPress, sin tocar archivos y sin FTP:
- Conectas. Pegas el token y pulsas «Probar conexión».
- Revisas el mapeo. El plugin analiza la respuesta real de tu cuenta y propone en qué campo de tu tema va cada dato. Lo revisas en el panel y, si te lías, vuelves al automático. Más en mapeo de campos.
- Eliges la frecuencia. Cada 15 o 30 minutos, cada hora, cada 6 o 12 horas, o una vez al día; viene desactivada hasta que eliges. En cada pasada pide el listado, compara la fecha de modificación de cada inmueble y descarga la ficha solo de lo nuevo o cambiado. Lo que Inmovilla marca como no disponible no se importa ni se actualiza, salvo que actives la casilla para incluirlo, y lo que desaparece del listado se trata según la regla que elijas. Detalle en sincronización automática.
- Las fotos van a tu biblioteca de medios, en el orden original, con la imagen destacada puesta y sin descargarlas otra vez en cada pasada. Por defecto, hasta 60 por vivienda, ajustable de 1 a 200. Ver importación de imágenes.
- Los datos se ajustan a tu tema: suma baños y aseos, que la API manda por separado, y con Polylang publica cada idioma con el texto que la agencia tiene en Inmovilla. Ver multiidioma.
Trae adaptadores para Houzez, RealHomes, Homez, WP Residence y MyHome, más uno genérico para el resto (temas compatibles). Solo lee: usa esas dos peticiones y no escribe nada en tu Inmovilla. Tampoco crea tablas en tu base de datos. Pide WordPress 6.0 y PHP 8.0 o superiores.
Y si un dato no llega como esperas, la pantalla «Soporte» del plugin hace una petición real para una ficha, por referencia o por código de oferta, y te enseña la petición y la respuesta JSON completas, con el token enmascarado, lista para enviársela al soporte de Inmovilla.
¿Programar la integración o usar un plugin?
La API está documentada y hacer la primera petición es fácil. Lo que lleva tiempo es todo lo que rodea a esas dos peticiones:
| Tarea | Integración propia | InmovillaToWordPress |
|---|---|---|
| Autenticación | Sencilla: una cabecera | Pegar el token y probar |
| Cupo y errores 408 | Distinguir cupo de timeout y ajustar el ritmo | Ritmo pausado que se ajusta con el mensaje de Inmovilla |
| Pedir solo lo que cambia | Guardar y comparar la fecha de cada inmueble | En cada pasada |
| Fotos | Componer la dirección, descargar, adjuntar y no duplicar | A la biblioteca de medios, en orden y sin duplicar |
| Campos del tema | Mapear cada campo a mano | Mapeo propuesto y revisable, con adaptadores por tema |
| Municipio | Resolver el código key_loca | Lo deduce de tus categorías o del anuncio |
| Bajas | Decidir y programar qué pasa con lo que desaparece | Una regla que eliges en el panel |
Si tu web necesita algo muy a medida, la API da para ello; tienes las cuatro opciones comparadas en cómo conectar Inmovilla con WordPress. Si lo que quieres es la cartera publicada en tu tema y al día, el plugin es de pago único por dominio: desde 99 € para 10 viviendas hasta 549 € sin límite. Tienes todos los planes en precios.

