Formatos de exportación de tus datos
Versión del 04/11/2026
Puedes llevarte los datos de tu estudio cuando quieras, gratis: para tener una copia o para cambiar de proveedor. Aquí explicamos qué te llevas, en qué formato va cada cosa y qué normas sigue, para que lo pueda leer cualquier programa.
Versión del formato: 3, del 17/10/2026. Si cambia, lo avisaremos antes y subiremos este número (va dentro de cada archivo JSON con cabecera, en version_formato).
1. Cómo se pide
- En la aplicación: Ajustes › Datos y baja › «Exportar todo el estudio». Lo pide el titular del estudio, después de confirmar que es él (con su llave de acceso; si todavía no tiene ninguna, con un código que le llega por correo). No cuesta nada. La prepara MideMatic y, cuando está lista, te avisa arriba, en los avisos: se descarga ahí mismo, con «Descargar (ZIP)».
- Por la API, desde un programa, con un token (apartado 5).
- Plazos:
- te la entregamos en 30 días como máximo (normalmente, en unos segundos); guardamos la fecha en que la pides y la fecha en que te la entregamos;
- puedes descargarla durante 30 días desde la entrega;
- después borramos el archivo (mientras tengas la cuenta, tus datos siguen en ella: puedes pedir otra exportación).
- Como mucho, 10 exportaciones al día por estudio.
- El archivo se guarda cifrado mientras está disponible, y solo lo descarga el titular (con su sesión) o un programa con un token del estudio.
Cambiar de proveedor
En Ajustes › Datos y baja › «Cambiar de proveedor». Lo pide el titular, después de confirmar que es él. No hace falta preaviso y no cuesta nada.
- El día que lo pides empieza el cambio. Te lo confirmamos por correo y preparamos tus datos: son los mismos que con «Exportar todo el estudio».
- Durante 30 días tienes el servicio completo, para que te lo lleves todo con calma. La suscripción ya no se renueva.
- Cuando se completa el cambio, el contrato termina (te lo confirmamos por correo) y el estudio queda al menos 30 días más en solo lectura: todas sus personas pueden verlo y descargarlo todo, pero no cambiar nada.
- Al final, lo borramos todo (las obras, sus archivos, el registro de obras, los criterios y las personas) y te enviamos por correo un certificado de borrado.
Mientras no se haya borrado, puedes exportar y descargar tus datos las veces que haga falta, en Ajustes › Datos y baja o por la API. Y mientras dura el cambio, el titular puede, en Ajustes › Datos y baja:
- dejarlo sin efecto: todo vuelve a estar como antes;
- alargar una vez los 30 días de servicio completo, el tiempo que le convenga (Reglamento (UE) 2023/2854, art. 25.5). El contrato termina entonces al acabar ese plazo, y los 30 días en solo lectura empiezan después.
Si por algo técnico no pudiéramos entregártelo todo en 30 días, te lo diríamos en los 14 días hábiles siguientes, con el porqué y un plazo nuevo de 7 meses como mucho, y el servicio seguiría. Si nos das el contacto de tu nuevo proveedor, le ayudamos a recibir tus datos.
Con un plan de pago, el cambio sigue sin costar nada: al terminar el contrato, en el plan anual te devolvemos lo pagado menos los meses empezados; y si el periodo que has pagado acaba antes de que termine el cambio, se cobran solo los días de más.
Lo único que no borramos es lo que tenemos que guardar (por ley, o como prueba de lo que aceptaste), que queda bloqueado, sin uso, solo para eso:
- si has pagado algo, las facturas y los cobros, 4 años, y los libros y sus justificantes, 6 años, nunca con el nombre de las obras;
- en los dos casos, hasta 6 años después de acabar el contrato, lo que aceptaste y declaraste (también cuándo se encendió o se apagó la IA), con tu correo, tu empresa y tu NIF: es la prueba de que aceptaste el acuerdo y el contrato de encargo;
- y durante 5 años, tus reclamaciones y la constancia: de cada cambio del plazo de conservación, de los planos que nos pediste guardar para investigar un fallo (cada petición, cada vez que se abrieron para investigarlo y cuándo se borraron: fecha, aviso, obra y quién; nunca los planos) y de cada vez que el soporte de MideMatic entró en tu cuenta (cada permiso que diste, y cada vez que alguien lo usó: fecha, para qué y quién). La constancia cuenta sus 5 años desde cada anotación.
La invitación al piloto, con tu correo, se borra con la cuenta (y, si no la aceptas, cuando caduca). Las copias de seguridad que todavía llevan tus datos caducan solas en 30 días como mucho: el certificado de borrado te dice el día.
2. Qué te llevas
Un archivo ZIP (midematic_datos_AAAA-MM-DD.zip) con:
| Archivo | Formato | Qué lleva |
|---|---|---|
estudio.json | JSON | El estudio, sus ajustes, sus suscripciones, el historial de la cuenta, sus incidencias («Marcar incidencia» e «Incidencia en el BC3») y las exportaciones que ha pedido |
usuarios.csv | CSV | Las personas del estudio y su papel, sin llaves ni códigos |
aceptaciones.csv | CSV | Lo que aceptó y declaró cada persona: documento, versión, huella del texto, fecha y quién; cuándo se encendió o se apagó la IA; y cuándo te pedimos que acreditaras que eres profesional, y cómo acabó |
memoria/criterios.json | JSON | Lo que me has enseñado: los criterios de medición, las convenciones de dibujo y las notas del estudio |
memoria/historial.json | JSON | Su historial: cada versión, con quién la cambió, cuándo y cómo |
propuestas_regla.json | JSON | Las propuestas de criterio, y lo que se decidió con cada una |
obras.csv | CSV | El registro de obras: una fila por obra, se guarden o no sus archivos |
obras/<n.º>/… | Varios | De cada obra cuyos archivos todavía se guardan: el plano y el presupuesto que subiste, su BC3 medido si la obra ya se ha descargado, las preguntas y lo respondido, las mediciones línea a línea, la conversación con la IA y el historial de la obra |
consumo_ia.csv | CSV | El uso de la IA de cada obra, sin el contenido: el modelo, los tokens y el coste en euros, por obra y día |
auditoria.csv | CSV | El registro de quién hizo qué en el estudio |
facturas.csv | CSV | Los datos de todas tus facturas (también las rectificativas). Solo si hay facturas |
facturas/F2026-000001.pdf… | Cada factura, una por archivo, con su número como nombre. Solo si hay facturas | |
manifiesto.json | JSON | La lista de archivos del ZIP, con su tamaño y su huella SHA-256 |
LEEME.txt | Texto | Una explicación corta y el enlace a esta página |
Lo que va dentro son los datos de tu estudio tal como están en MideMatic en el momento de preparar la exportación. Lo que no va, y por qué, está en el apartado 6.
3. Normas que siguen
| Qué | Norma |
|---|---|
| ZIP | Formato ZIP (especificación APPNOTE de PKWARE), compresión deflate. Se abre con cualquier sistema operativo |
| JSON | RFC 8259, en UTF-8 sin BOM |
| CSV | RFC 4180: separador coma, comillas dobles solo cuando hacen falta, fin de línea CRLF y una primera fila con los nombres de las columnas. En UTF-8 sin BOM |
| PDF 1.4, legible con cualquier lector de PDF | |
| DWG y DXF | Los planos, tal como los subiste |
| BC3 | FIEBDC-3: el presupuesto, tal como lo subiste, y el BC3 medido de las obras ya descargadas, tal como lo descargas en la aplicación |
| Fechas | ISO 8601 en hora UTC, al segundo: 2026-10-13T08:15:30Z |
| Importes | En euros, con punto decimal. En los CSV, siempre con dos decimales (279.00); en los JSON, como número (279.0) |
| Medidas | Número con punto decimal y sin ceros de más: 10, 5.2, 42.3 (nunca 10.00 ni 42.30). Los parciales y la cantidad de cada partida van redondeados con los decimales de tu presupuesto |
| Porcentajes | Número con punto decimal (21, 21.5) |
| Sí o no | JSON: true o false. CSV: true o false |
| Sin dato | JSON: null. CSV: la casilla vacía |
| Huellas | SHA-256 (FIPS 180-4), en hexadecimal |
Las celdas de los CSV, sin trampa. Un texto que escribió alguien (el nombre de una obra, un comentario) puede empezar por =, +, - o @, y una hoja de cálculo lo tomaría por una fórmula. Por eso, en los CSV, una celda de texto que empieza por uno de esos signos (o por un tabulador o un retorno de carro) lleva un apóstrofo (') delante: '=SUMA(A1). Si tu programa necesita el texto tal cual, quita ese apóstrofo. Un número escrito como texto (-2,50) no es una fórmula y va como está. En los JSON no hace falta: el texto va siempre tal cual.
4. Estructura de cada archivo
Tipos: texto, entero, número, euros (número con dos decimales), fecha (ISO 8601 en UTC), sí/no, objeto y lista. Cualquier campo puede venir vacío (null) si no hay dato.
Los JSON de la raíz del ZIP y los de memoria/ empiezan con la misma cabecera de cinco campos: formato, version_formato, generada, exportacion y documentacion.
estudio.json
| Campo | Tipo | Qué es |
|---|---|---|
formato | texto | Siempre midematic-exportacion |
version_formato | entero | Versión de este formato (hoy, 3) |
generada | fecha | Cuándo se preparó la exportación |
exportacion | texto | Identificador de la exportación (el mismo que en la API) |
documentacion | texto | Dirección de esta página |
estudio | objeto | El estudio |
ajustes | objeto | Los ajustes del estudio |
suscripciones | lista | Sus suscripciones, de la más antigua a la más reciente |
historial | lista | El historial de la cuenta (exportaciones, tokens, cambios de proveedor, cobros, reclamaciones…) |
incidencias | lista | Las incidencias del estudio («Marcar incidencia» e «Incidencia en el BC3», y los avisos de error) |
exportaciones | lista | Las exportaciones que ha pedido el estudio (también esta) |
Ejemplo (recortado):
{
"formato": "midematic-exportacion",
"version_formato": 3,
"generada": "2026-10-13T08:15:30Z",
"exportacion": "exp_1d67bdf2f2314921",
"documentacion": "https://midematic.com/formatos-de-exportacion/",
"estudio": {"id": "est_097402b155464adb", "nombre": "Estudio de Ejemplo SL", "tipo": "sociedad",
"actividad": "arquitectura", "nif": "B12345674", "pais": "ES", "alta": "2026-10-01T09:00:00Z", "piloto": true},
"ajustes": {"conservacion": "90_dias", "conservacion_cambiada": null, "ia_activa": true},
"suscripciones": [{"id": "sus_3c72365194684ce4", "plan": "piloto", "periodo": "mes", "estado": "piloto"}]
}
El estudio (estudio)
| Campo | Tipo | Qué es |
|---|---|---|
id | texto | Identificador del estudio |
nombre | texto | Nombre o razón social del estudio |
tipo | texto | autonomo, sociedad u otra (otra entidad) |
actividad | texto | arquitectura, aparejador, reformas o construccion |
nif | texto | NIF o NIF-IVA |
direccion | texto | Dirección fiscal |
codigo_postal | texto | Código postal |
poblacion | texto | Población |
pais | texto | País (código ISO 3166-1 de dos letras, como ES) |
territorio | texto | Para los impuestos: peninsula (Península y Baleares), canarias, ceuta, melilla o ue |
nif_iva_valido_en_vies | sí/no | Si tu NIF-IVA salió válido en VIES (empresas de otros países de la UE) |
correo_facturas | texto | Correo para facturas, si lo has puesto: las facturas se envían a él (vacío: al correo del titular) |
alta | fecha | Cuándo se creó el estudio |
ultima_actividad | fecha | Último uso |
activa | sí/no | Si la cuenta está activa |
piloto | sí/no | Si el estudio viene del piloto |
obras_extra_autorizadas | fecha | Cuándo autorizaste las obras extra de pago (vacío si no están autorizadas) |
descuento_porcentaje | número | Descuento de tu cuenta, si lo tienes |
descuento_meses | entero | Durante cuántos meses (0: mientras dure la suscripción) |
Los ajustes del estudio (ajustes)
| Campo | Tipo | Qué es |
|---|---|---|
conservacion | texto | Cuánto se guardan los archivos de cada obra: al_descargar (72 horas después de la primera descarga del BC3 medido), 90_dias (90 días desde que el BC3 medido está listo) o mientras_cuenta (mientras exista la cuenta) |
conservacion_cambiada | fecha | Cuándo se cambió ese plazo por última vez (vacío si nunca se ha cambiado) |
ia_activa | sí/no | Si el estudio tiene activada la IA |
Cada suscripción (suscripciones)
| Campo | Tipo | Qué es |
|---|---|---|
id | texto | Identificador |
plan | texto | piloto, basico, estudio o pro |
periodo | texto | mes o anual |
estado | texto | piloto, activa, impagada (pago pendiente) o finalizada |
alta | fecha | Cuándo se contrató |
inicio | fecha | Inicio de la suscripción |
fin_periodo | fecha | Fin del periodo en curso |
renovacion_cancelada | sí/no | Si ya no se va a renovar |
pago_pendiente_hasta | fecha | Si un pago no pasó, hasta cuándo sigue funcionando |
aviso_renovacion | fecha | Cuándo te avisamos de la renovación (plan anual) |
precio | euros | Precio del periodo, sin impuestos (0 en el piloto) |
impuesto | objeto | nombre (texto), tipo (porcentaje) y nota (texto) |
pais | texto | País con el que se calculó el impuesto |
descuento | objeto | pct (porcentaje) y meses (entero), si había descuento |
baja | fecha | Cuándo terminó |
Cada anotación del historial (historial)
| Campo | Tipo | Qué es |
|---|---|---|
fecha | fecha | Cuándo |
tipo | texto | Qué pasó, por ejemplo exportacion, token_api, cambio_proveedor, fin_contrato, reclamacion, obra_extra o terminacion |
obra_numero | entero | La obra, si va de una obra |
importe | euros | El importe, si lo hay (sin impuestos) |
texto | texto | La anotación, con palabras |
Cada incidencia (incidencias)
| Campo | Tipo | Qué es |
|---|---|---|
numero | texto | INC-0001… |
obra_numero | entero | La obra (vacío si el aviso era de la aplicación o de la cuenta, y no de una obra) |
partida | texto | La partida que estaba mal, si el aviso era de una partida |
esperado | texto | Lo que esperabas, si lo dijiste |
motivo | texto | El motivo que elegiste al marcarla en la aplicación (cuenta, si era un error de la aplicación o de la cuenta) |
explicacion | texto | Lo que nos explicaste |
creada | fecha | Cuándo nos avisaste |
estado | texto | abierta o cerrada |
cerrada | fecha | Cuándo se resolvió |
respuesta | texto | Lo que te contestó una persona de MideMatic, si ya hay respuesta |
respondida | fecha | Cuándo te contestó |
Cada exportación pedida (exportaciones)
| Campo | Tipo | Qué es |
|---|---|---|
id | texto | Identificador |
tipo | texto | exportacion o cambio_proveedor |
pedida | fecha | Cuándo se pidió |
entrega_limite | fecha | Fecha límite de entrega (30 días); en un cambio de proveedor, también el último día con el servicio completo |
entregada | fecha | Cuándo se entregó (vacío en la que se está preparando, como la de este mismo archivo) |
disponible_hasta | fecha | Hasta cuándo se puede descargar |
archivo_borrado | fecha | Cuándo se borró el archivo |
fin_contrato | fecha | En un cambio de proveedor, cuándo terminó el contrato |
prorroga_hasta | fecha | En un cambio de proveedor, hasta cuándo has alargado el plazo de servicio completo (vacío si no lo has alargado) |
usuarios.csv
Una fila por persona del estudio, también las que ya no están. No lleva llaves de acceso, códigos, tokens ni sesiones.
| Campo | Tipo | Qué es |
|---|---|---|
usuario_id | texto | Identificador de la persona (el mismo que en obras/<n.º>/respuestas.json) |
correo | texto | Su correo |
nombre | texto | Su nombre, si lo ha puesto |
papel | texto | titular o usuario_adicional |
estado | texto | activa, quitada (la quitó el titular) o se_fue (se fue ella) |
desde | fecha | Desde cuándo es del estudio |
hasta | fecha | Hasta cuándo lo fue (vacío si sigue) |
Ejemplo:
usuario_id,correo,nombre,papel,estado,desde,hasta
usu_8a566fcef38c4aab,ana@estudio.example,Ana García,titular,activa,2026-10-01T09:00:00Z,
usu_3ac94f5d57cb4c8e,luis@estudio.example,Luis Pérez,usuario_adicional,activa,2026-10-02T10:30:00Z,
aceptaciones.csv
Lo que aceptó y declaró cada persona del estudio, del más antiguo al más reciente: los documentos (con su versión y la huella del texto que vio), las declaraciones de que el estudio es profesional o empresa, cada vez que se encendió o se apagó la IA y las acreditaciones (cada vez que MideMatic te pidió que acreditaras que eres profesional o empresa, y cómo acabó). Es la misma constancia que guardamos bloqueada (apartado 1): aquí va una copia.
| Campo | Tipo | Qué es |
|---|---|---|
fecha | fecha | Cuándo |
tipo | texto | aceptacion, declaracion o acreditacion |
documento | texto | Qué se aceptó (por ejemplo acuerdo_piloto, condiciones, encargo_tratamiento o uso_ia, la IA del estudio), declaracion o, en una acreditación, actividad_profesional |
version | texto | La versión del documento; en una declaración, las versiones de los documentos que había entonces; en una acreditación, vacía |
contexto | texto | Dónde (alta, ajustes…); en uso_ia, encender o apagar; en una acreditación, pedida (cuando te lo pedimos) o, en una segunda fila, cómo acabó: acreditada o no_acreditada |
huella_texto | texto | Huella SHA-256 del texto que se aceptó o se declaró, tal como se vio; en una acreditación pedida, la del motivo que te dijimos (en la fila de cómo acabó, vacía) |
quien | texto | El correo de quien lo hizo, si quedó guardado quién fue (desde el 17/10/2026, siempre). En una acreditación, vacío: la pide MideMatic |
memoria/criterios.json
Lo que me has enseñado: los criterios de medición, las convenciones de dibujo y las notas del estudio, tal como están hoy. De cada uno, de dónde sale, en cuántas obras se ha aplicado y si está activo. No lleva números de una obra (salvo los que fijó el estudio o escribió en una nota) ni nombres de estancias: MideMatic nunca los recuerda para otra obra.
| Campo | Tipo | Qué es |
|---|---|---|
formato | texto | Siempre midematic-exportacion |
version_formato | entero | Versión de este formato |
generada | fecha | Cuándo se preparó |
exportacion | texto | Identificador de la exportación |
documentacion | texto | Dirección de esta página |
version | entero | Número de cambios que lleva |
actualizada | fecha | Último cambio |
datos | objeto | Lo enseñado, tal cual (ver abajo) |
aplicado | objeto | De cada criterio (su clave), en cuántas obras se ha aplicado |
datos es el formato propio de MideMatic (versión 3): reglas (por cada criterio, una lista de reglas con su id, su condicion, su valor, su origen y si está activa), convenciones (convenciones de dibujo del estudio, con su origen), notas (las notas del estudio, con sus palabras; hoy, una lista vacía: llegan con «Explícamelo») e historial (cambios).
Ejemplo (recortado):
{
"version": 4, "actualizada": "2026-10-10T10:02:11Z",
"datos": {"version": 3, "id": "principal", "reglas": {"desglose": [{"id": "R1", "condicion": {}, "valor": "total"}]},
"convenciones": [], "notas": [], "historial": []},
"aplicado": {"desglose": 3}
}
memoria/historial.json
El historial de los criterios del estudio: cada versión que han tenido, de la más antigua a la más reciente.
| Campo | Tipo | Qué es |
|---|---|---|
formato | texto | Siempre midematic-exportacion |
version_formato | entero | Versión de este formato |
generada | fecha | Cuándo se preparó |
exportacion | texto | Identificador de la exportación |
documentacion | texto | Dirección de esta página |
versiones | lista | Las versiones de los criterios |
Cada versión (versiones)
| Campo | Tipo | Qué es |
|---|---|---|
version | entero | Número de la versión |
cambiada | fecha | Cuándo se hizo el cambio |
cambiada_por | texto | El correo de quien lo hizo (texto vacío si no fue una persona del estudio o ya no es del estudio) |
origen | texto | Cómo se cambió: a_mano, explicado (una persona lo explicó con sus palabras y lo guardó), recordar (al contestar una pregunta), ficha_inicial, importar, deshacer o migracion |
datos | objeto | Los criterios como quedaron, en el mismo formato que datos de memoria/criterios.json |
propuestas_regla.json
Las propuestas de criterio: lo que MideMatic propuso guardar como criterio del estudio y lo que una persona decidió. Ninguna propuesta se guarda como criterio sin que una persona del estudio lo acepte.
| Campo | Tipo | Qué es |
|---|---|---|
formato | texto | Siempre midematic-exportacion |
version_formato | entero | Versión de este formato |
generada | fecha | Cuándo se preparó |
exportacion | texto | Identificador de la exportación |
documentacion | texto | Dirección de esta página |
propuestas | lista | Las propuestas, de la más antigua a la más reciente |
Cada propuesta (propuestas)
| Campo | Tipo | Qué es |
|---|---|---|
id | texto | Identificador |
origen | texto | De dónde sale, por ejemplo explicado (la IA entendió lo que explicaste con tus palabras) |
propuesta | fecha | Cuándo se propuso |
estado | texto | pendiente, aceptada o rechazada |
decidida | fecha | Cuándo se decidió |
decidida_por | texto | El correo de quien lo decidió (texto vacío si todavía no se ha decidido) |
propuesto_por | texto | ia si lo propuso la IA (también si después lo aceptó una persona) |
ia_modelo | texto | Si lo propuso la IA, con qué modelo |
ia_fecha | fecha | Si lo propuso la IA, cuándo |
regla | objeto | La propuesta tal cual, en el formato propio de MideMatic: el criterio y el valor que se proponía |
obras.csv
El registro de obras: una fila por obra, por su número. La fila sigue aunque los archivos de la obra ya se hayan borrado.
| Campo | Tipo | Qué es |
|---|---|---|
numero | entero | Número de la obra en tu estudio |
obra_id | texto | Identificador |
nombre | texto | Nombre de la obra |
creada | fecha | Cuándo se creó |
creada_por | texto | El correo de quien la creó |
responsable | texto | El correo de su responsable |
estado | texto | abierta, espera_extra, entregada o fallida |
bc3_listo | fecha | Cuándo quedó listo el BC3 medido |
bc3_descargado | fecha | Cuándo se descargó el BC3 medido |
archivos_hasta | fecha | Hasta cuándo se guardan sus archivos (vacío si ya se borraron o si no tienen fecha) |
archivos_borrados | fecha | Cuándo se borraron sus archivos |
contada | sí/no | Si contó como obra del plan |
motivo_no_contada | texto | Si no contó, por qué |
gratis | sí/no | Si era la obra gratis de prueba |
extra | sí/no | Si fue una obra extra de pago |
precio_extra | euros | Su precio, sin impuestos |
extra_aceptada | fecha | Cuándo dijiste que sí a la obra extra |
devuelta | texto | Si se devolvió, el motivo |
bc3_validado | sí/no | Si el BC3 medido pasó la validación |
partidas_medidas | entero | Partidas con medición |
relacionada_con | texto | La obra anterior de la que es continuación o repetición |
partidas | entero | Partidas del presupuesto |
partidas_solas | entero | Medidas sin preguntar |
partidas_preguntadas | entero | Medidas con alguna pregunta |
partidas_pendientes | entero | Partidas que quedaron sin medir |
partidas_por_confirmar | entero | Partidas con una propuesta de la IA que nadie ha aceptado todavía |
preguntas | entero | Preguntas que tuviste que contestar |
carpeta | texto | Dónde están sus archivos dentro del ZIP (obras/3/); vacío si ya se borraron |
Ejemplo (recortado: solo las primeras columnas):
numero,obra_id,nombre,creada,creada_por,responsable,estado,bc3_listo
3,obr_5f2c…,Reforma vivienda 2026-17,2026-10-10T09:14:02Z,ana@estudio.example,ana@estudio.example,abierta,2026-10-10T09:41:55Z
obras/<n.º>/obra.json
La ficha de la carpeta de una obra. Hay una carpeta obras/<n.º>/ por cada obra cuyos archivos todavía se guardan (en obras.csv, las que tienen carpeta).
| Campo | Tipo | Qué es |
|---|---|---|
numero | entero | Número de la obra |
nombre | texto | Nombre de la obra |
archivos | objeto | El nombre con el que subiste cada archivo: el nombre que lleva dentro del ZIP (plano.dxf, presupuesto.bc3, medido-v1.bc3) y, de cada uno, su nombre original |
Ejemplo:
{"numero": 3, "nombre": "Reforma vivienda 2026-17",
"archivos": {"plano.dxf": "planta-reforma.dxf", "presupuesto.bc3": "presupuesto.bc3", "medido-v1.bc3": "presupuesto_medido.bc3"}}
El plano, el presupuesto y el BC3 medido
En la carpeta de cada obra van, tal cual:
plano.dwgoplano.dxf: el plano que subiste;presupuesto.bc3: el presupuesto que subiste;medido-v1.bc3,medido-v2.bc3…: su BC3 medido, si la obra ya se ha descargado. Es el mismo archivo que descargas en la aplicación. Una obra que aún no se ha descargado va con sus originales (el plano y el presupuesto) ymediciones.csv, sin el BC3 medido. Exportar no cuenta la obra;recortes/: los dibujos (PNG) que acompañaban a las preguntas de la obra.
obras/<n.º>/mediciones.csv
Las mediciones de la obra como están hoy, línea a línea: una fila por cada línea de medición de cada partida. Una partida pendiente (sin ninguna línea) lleva una sola fila, con linea vacía y el motivo en comentario. Las columnas de la partida se repiten en cada una de sus filas.
| Campo | Tipo | Qué es |
|---|---|---|
capitulo | texto | Código del capítulo |
partida | texto | Código de la partida |
unidad | texto | Unidad de la partida (m2, m, ud…) |
resumen | texto | Resumen de la partida, como en tu presupuesto |
cantidad | número | Cantidad total de la partida (vacío si está pendiente) |
origen_partida | texto | El origen de la partida entera (ver abajo): si alguna de sus líneas es una propuesta de la IA que nadie ha aceptado, propuesto_por_ia |
sin_confirmar | sí/no | Si la partida tiene una propuesta de la IA que nadie del estudio ha aceptado todavía |
linea | entero | Número de la línea dentro de la partida (1, 2, 3…) |
comentario | texto | Comentario de la línea; en una partida pendiente, por qué no se ha medido |
unidades | número | Unidades |
longitud | número | Longitud |
anchura | número | Anchura |
altura | número | Altura |
parcial | número | Parcial de la línea |
origen | texto | El origen de esta línea (ver abajo) |
propuesto_por | texto | ia si la línea la propuso la IA, también si después la aceptó una persona (vacío si no) |
ia_modelo | texto | Si la propuso la IA, con qué modelo |
ia_fecha | fecha | Si la propuso la IA, cuándo |
Ejemplo:
capitulo,partida,unidad,resumen,cantidad,origen_partida,sin_confirmar,linea,comentario,unidades,longitud,anchura,altura,parcial,origen,propuesto_por,ia_modelo,ia_fecha
01,01.01,ud,Toma de corriente 16A,10,medido_en_plano,false,1,Salón,6,,,,6,medido_en_plano,,,
01,01.01,ud,Toma de corriente 16A,10,medido_en_plano,false,2,Cocina,4,,,,4,medido_en_plano,,,
03,03.01,m2,Pavimento porcelánico,27.92,propuesto_por_ia,true,1,Salón,1,5.2,4.1,,21.32,propuesto_por_ia,ia,eu.anthropic.claude-opus-5-5,2026-10-10T09:30:12Z
03,03.02,m,Rodapié cerámico,,pendiente,false,,No está en el plano,,,,,,pendiente,,,
El origen de cada línea (origen)
Cada línea dice de dónde sale su medición, con una de estas cinco palabras, siempre las mismas, para que lo lea un programa:
| Valor | Qué quiere decir |
|---|---|
medido_en_plano | Medido directamente en los planos |
deducido | Deducido de otra medición o con un criterio del estudio (por ejemplo, una superficie de pared con la altura que dijiste) |
propuesto_por_ia | Lo propuso la IA y nadie del estudio lo ha aceptado todavía. Si una persona lo acepta o lo cambia, deja de llevar este valor y pasa a del_estudio; que lo propuso la IA lo sigue diciendo propuesto_por |
del_estudio | Lo escribió, lo cambió o lo aceptó una persona del estudio, o sale de lo que el estudio decidió al contestar una pregunta |
pendiente | Sin medir: MideMatic no lo ha podido medir, y el motivo va en comentario |
obras/<n.º>/historial.csv
El historial de la obra, del hecho más antiguo al más reciente.
| Campo | Tipo | Qué es |
|---|---|---|
fecha | fecha | Cuándo |
quien | texto | Quién: el nombre de la persona, o MideMatic |
que | texto | Qué pasó, con palabras |
obras/<n.º>/conversacion.json
Lo hablado con la IA en la obra: en «Explícamelo» (de una pregunta o de una partida) y en el chat de la obra. Una lista, de lo más antiguo a lo más reciente. Lo que dijo la IA en una tarjeta «He entendido» lleva lo que enseñó (propuesta) y si se aplicó.
| Campo | Tipo | Qué es |
|---|---|---|
fecha | fecha | Cuándo |
quien | texto | persona o ia |
usuario_id | texto | Si habló una persona, quién (el mismo que en usuarios.csv) |
donde | texto | pregunta, partida o chat |
texto | texto | Lo que se dijo |
propuesta | objeto | Lo que enseñó la IA en «He entendido», si lo hubo |
aplicada | sí/no | Si una persona pulsó «Aplicar» |
modelo | texto | Si habló la IA, con qué modelo |
obras/<n.º>/preguntas.json
Las preguntas que la obra tiene abiertas en ese momento. Solo está si la obra espera a que el estudio conteste. Va en el formato propio de MideMatic (versión 1), tal como se guarda.
| Campo | Tipo | Qué es |
|---|---|---|
version | entero | Versión del formato de las preguntas (hoy, 1) |
tanda | objeto | La ronda de preguntas: su numero, cuántas preguntas tiene (total) y si es una pregunta suelta (suelta) |
preguntas | lista | Cada pregunta: su id, su tipo, su enunciado, sus opciones (con lo que mediría cada una) y lo demás que se enseña en pantalla |
resueltas_por_criterio | lista | Las preguntas que no hizo falta hacer porque el estudio ya tenía un criterio |
obras/<n.º>/respuestas.json
Lo que el estudio ha contestado en esa obra. Va en el formato propio de MideMatic, tal como se guarda: sus fechas (at) no van en ISO 8601, sino en segundos desde el 1 de enero de 1970 (UTC), y quien contestó (por) va con su usuario_id de usuarios.csv.
| Campo | Tipo | Qué es |
|---|---|---|
abierta | objeto | Lo contestado de la ronda de preguntas que está abierta: su numero y sus respuestas |
tandas | lista | Las rondas de preguntas ya enviadas, con sus preguntas enteras y sus respuestas |
sueltas | objeto | Las preguntas sueltas ya contestadas (la de la unidad del plano y la del edificio) |
cambio | objeto | Si se está volviendo a calcular la obra por una respuesta cambiada, cuál y desde cuándo |
Cada respuesta lleva r (la respuesta), corta (cómo se lee), por (quién) y at (cuándo).
consumo_ia.csv
El uso de la IA de cada obra, sin el contenido: una fila por día, obra, fase y modelo, con los tokens y el coste. No lleva nada de lo que se envió ni de lo que contestó.
| Campo | Tipo | Qué es |
|---|---|---|
dia | texto | El día, como 2026-10-17 (UTC) |
obra_numero | entero | La obra (vacío si no fue en una obra: el chat de «Criterios del estudio») |
fase | texto | Para qué se usó: preparar (preparar la obra), explicamelo («Explícamelo», en una pregunta o una partida), chat_obra (el chat de la obra) o chat_criterios (el de «Criterios del estudio») |
modelo | texto | El modelo de la IA |
llamadas | entero | Cuántas veces |
tokens_entrada | entero | Tokens enviados |
tokens_salida | entero | Tokens recibidos |
tokens_cache_lectura | entero | Tokens leídos de la caché |
tokens_cache_escritura | entero | Tokens escritos en la caché |
coste_eur | euros | Lo que costó, en euros |
auditoria.csv
El registro de quién hizo qué en el estudio, del hecho más antiguo al más reciente.
| Campo | Tipo | Qué es |
|---|---|---|
fecha | fecha | Cuándo |
actor_tipo | texto | usuario (una persona del estudio) o sistema (MideMatic, solo) |
actor | texto | El correo de la persona (vacío si fue el sistema o si ya no es del estudio) |
accion | texto | Qué se hizo, por ejemplo invitacion, ia_encendida, conservacion, token_api_creado, exportacion_pedida o criterios_borrados |
objeto | texto | Sobre qué, si lo hay (un identificador, como token:tok_a18386a19e) |
resultado | texto | Cómo acabó (ok, si se hizo) |
detalles | texto | Más datos del hecho, en JSON ({} si no hay) |
facturas.csv
Solo si el estudio tiene facturas. Una fila por factura. Las rectificativas (serie R) llevan los importes en negativo y el número de la factura que rectifican.
| Campo | Tipo | Qué es |
|---|---|---|
codigo | texto | Número de la factura, como F2026-000001 |
serie | texto | F (facturas) o R (rectificativas) |
fecha | fecha | Fecha de la factura |
concepto | texto | Concepto |
base | euros | Base imponible |
impuesto | texto | IVA o Sin IVA |
tipo | número | Porcentaje del impuesto |
cuota | euros | Cuota del impuesto |
total | euros | Total |
nota | texto | Nota fiscal (por ejemplo, inversión del sujeto pasivo) |
rectifica | texto | En una rectificativa, la factura que rectifica |
cliente_razon_social | texto | Tu razón social en la factura |
cliente_nif | texto | Tu NIF en la factura |
cliente_direccion | texto | Tu dirección en la factura |
cliente_codigo_postal | texto | Código postal |
cliente_poblacion | texto | Población |
cliente_pais | texto | País |
huella_anterior | texto | Huella de la factura anterior (las facturas van encadenadas) |
huella | texto | Huella de esta factura |
archivo_pdf | texto | Dónde está su PDF dentro del ZIP |
Ejemplo:
codigo,serie,fecha,concepto,base,impuesto,tipo,cuota,total,nota,rectifica,cliente_razon_social,cliente_nif,cliente_direccion,cliente_codigo_postal,cliente_poblacion,cliente_pais,huella_anterior,huella,archivo_pdf
F2026-000001,F,2026-10-13T08:15:30Z,"MideMatic Estudio, mensual (desde el 13/10/2026)",279.00,IVA,21,58.59,337.59,,,Estudio de Ejemplo SL,B12345674,Calle Mayor 1,46001,Valencia,ES,,3d67bbe0…,facturas/F2026-000001.pdf
facturas/
Cada factura en PDF (facturas/F2026-000001.pdf), la misma que recibiste por correo.
manifiesto.json
| Campo | Tipo | Qué es |
|---|---|---|
formato | texto | Siempre midematic-exportacion |
version_formato | entero | Versión de este formato |
generada | fecha | Cuándo se preparó |
exportacion | texto | Identificador de la exportación |
documentacion | texto | Dirección de esta página |
archivos | lista | Los archivos del ZIP (todos menos este) |
Cada archivo (archivos)
| Campo | Tipo | Qué es |
|---|---|---|
nombre | texto | Nombre dentro del ZIP |
tipo | texto | Tipo de contenido (application/json, text/csv, application/pdf, text/plain, image/png o application/octet-stream) |
bytes | entero | Tamaño |
sha256 | texto | Huella SHA-256: sirve para comprobar que el archivo está entero |
5. La interfaz abierta (API)
Los datos de tu estudio también se descargan desde un programa, gratis, con una interfaz abierta.
- Dirección:
https://api.midematic.com/api/v1/exportaciones. Todo por HTTPS. - Autenticación: siempre con un token de la API de exportación, en la cabecera
Authorization: Bearer mmx_…. No vale ninguna sesión. El token lo crea el titular en Ajustes › Datos y baja › «Tokens de la API de exportación» › «Crear», con un nombre para saber para qué es («Copia semanal»). Se enseña una sola vez; se puede revocar cuando quieras, y deja de valer en el momento. Solo sirve para esto: ver las exportaciones del estudio, descargarlas y pedir una nueva. Un estudio puede tener hasta 5 tokens activos. Quien tenga el token puede descargarlo todo: guárdalo como una contraseña. - Límites: 60 peticiones por minuto y 10 exportaciones nuevas al día por estudio.
| Petición | Qué hace | Respuesta |
|---|---|---|
GET /api/v1/exportaciones | Lista las exportaciones del estudio, de la más reciente a la más antigua | {"exportaciones": [ … ], "documentacion": "…"} |
POST /api/v1/exportaciones | Pide una exportación nueva y espera a que esté preparada | 201 y la exportación |
GET /api/v1/exportaciones/{id} | Una exportación | La exportación |
GET /api/v1/exportaciones/{id}/archivo | Descarga el ZIP | El ZIP (application/zip), el mismo que en la aplicación |
POST no lleva cuerpo. Normalmente responde en unos segundos, con la exportación ya disponible; si no se ha podido preparar en el momento, responde con el estado preparando y MideMatic lo vuelve a intentar solo: pregunta por ella con GET /api/v1/exportaciones/{id}.
Si algo va mal, la respuesta es un JSON con error (un código) y texto (la causa, en español):
| Código HTTP | error | Cuándo |
|---|---|---|
401 | sin_token | Falta la cabecera Authorization: Bearer mmx_… |
401 | token_invalido | El token no existe o está revocado |
404 | no_existe | Esa exportación no es de tu estudio |
409 | preparando | Todavía se está preparando |
410 | borrada | Ha pasado su plazo de descarga, y su archivo se ha borrado |
429 | ritmo | Se ha pasado uno de los límites |
La exportación en la API (exportacion)
| Campo | Tipo | Qué es |
|---|---|---|
id | texto | Identificador |
tipo | texto | exportacion o cambio_proveedor |
estado | texto | preparando, disponible o borrada |
pedida | fecha | Cuándo se pidió |
entrega_limite | fecha | Fecha límite de entrega |
entregada | fecha | Cuándo se entregó |
disponible_hasta | fecha | Hasta cuándo se puede descargar |
archivo_borrado | fecha | Cuándo se borró el archivo |
fin_contrato | fecha | En un cambio de proveedor, cuándo terminó el contrato |
prorroga_hasta | fecha | En un cambio de proveedor, hasta cuándo has alargado el plazo de servicio completo (vacío si no lo has alargado) |
bytes | entero | Tamaño del ZIP |
sha256 | texto | Huella SHA-256 del ZIP |
descargas | entero | Cuántas veces se ha descargado |
archivo | texto | Dirección para descargarlo (vacía si no está disponible) |
Ejemplo:
curl -H "Authorization: Bearer mmx_…" https://api.midematic.com/api/v1/exportaciones
curl -X POST -H "Authorization: Bearer mmx_…" https://api.midematic.com/api/v1/exportaciones
curl -H "Authorization: Bearer mmx_…" -o mis_datos.zip https://api.midematic.com/api/v1/exportaciones/exp_1d67bdf2f2314921/archivo
6. Lo que no se exporta y por qué
- El funcionamiento interno de MideMatic: su programa, sus reglas, sus instrucciones a la IA y sus modelos de medición. Es secreto comercial (art. 25.2.f del Reglamento de Datos). No te impide llevarte tus datos: va cada medición, con su origen.
- La constancia que guardamos aparte: los permisos que diste a MideMatic (los accesos de soporte y los permisos para mirar una obra por un aviso tuyo) y tus reclamaciones con nuestras respuestas. Son la prueba de lo que se permitió y se reclamó, y por eso se guardan aparte y bloqueados (apartado 1). Las reclamaciones que hiciste en la aplicación, con sus respuestas, están en Ayuda › Reclamaciones, y las demás, en tu correo. Lo que aceptaste y declaraste, y las acreditaciones, sí van, en
aceptaciones.csv. - Los archivos de las obras que ya se borraron. El plano, el presupuesto, el BC3 medido, las preguntas, las mediciones y la conversación de una obra se guardan, cifrados, solo el plazo que elige tu estudio (por defecto, 90 días desde que el BC3 medido está listo; también «al descargar», 72 horas después de la primera descarga, o «mientras tenga la cuenta») y después se borran. De una obra borrada queda su fila en
obras.csv, sin su carpeta. Las copias de seguridad no llevan los archivos de las obras. - Las credenciales: las llaves de acceso, los códigos de recuperación, los códigos que enviamos por correo, los tokens de la API y las sesiones. No salen nunca de MideMatic, tampoco hacia ti.
- Las huellas técnicas de cada obra (la del plano y la del presupuesto, las dos sin su contenido). Solo sirven para reconocer si una obra es la misma que otra reciente y se borran a los 61 días.
- Algunos registros internos de la cuenta: los cobros y los pagos pendientes (las facturas sí van) y lo que nos dice el proveedor de correo sobre tu dirección.
- Lo técnico: los registros del servidor (sin contenido ni nombres de archivo; se borran a los 30 días; la lista de sesiones, a los 90), lo que se envió a la IA (de la IA va su uso, sin el contenido, en
consumo_ia.csv), la cola de trabajos y los correos que te hemos enviado (ya los tienes).
7. Limitaciones conocidas
- La exportación es una foto del momento en que se prepara: lo que cambie después no está dentro. En la aplicación, mientras hay una exportación lista para descargar (30 días), se ofrece esa; para tener otra antes, pídela por la API.
- Lo enseñado, las propuestas, las preguntas y las respuestas usan el formato propio de MideMatic. No hay una norma común para guardar criterios de medición ni preguntas sobre un plano: otro programa tendrá que convertirlos. Son texto JSON legible, y sus campos principales están explicados arriba.
- En
obras/<n.º>/respuestas.jsonlas fechas van en segundos, no en ISO 8601, y las personas, por su identificador (apartado 4). - El correo de cada persona es el que tiene hoy: donde se dice quién hizo algo (
quien,creada_por,actor…), va el correo que esa persona tiene hoy en MideMatic, también si ya no es del estudio; si lo cambió, no sale el que tenía entonces. - Las mediciones van como están hoy, no versión a versión: de cada versión anterior de una obra ya descargada tienes su BC3 medido (
medido-v1.bc3…). - Las facturas en PDF son copias en PDF 1.4, no facturas electrónicas estructuradas (Facturae o similares) ni PDF/A. Los datos de cada factura, para un programa, están en
facturas.csv. - Hojas de cálculo: los CSV van con coma y punto decimal, como pide la norma. Una hoja de cálculo en español puede abrirlos mal con doble clic: impórtalos («Datos» → «Desde texto/CSV»), con origen UTF-8 y la coma como separador. Y una celda de texto que empezaba por
=,+,-o@lleva un apóstrofo delante (apartado 3). - El ZIP sin cifrar. Se guarda cifrado en el servidor y viaja por HTTPS, pero una vez descargado es tu copia: lleva los planos y los presupuestos de tus obras. Guárdalo en un sitio seguro.
- Una exportación grande (muchas obras con sus planos) puede tardar en prepararse y ocupar bastante.