{
    "api": "Terreno Fértil v3",
    "como": "Sesión web, o cabecera Authorization: Bearer trf_….  Con varios terrenos, añade ?terreno=N.",
    "rutas": [
        "GET|POST          /entidades      ?tipo=&padre=&sin_ubicar=1&q=",
        "GET|PATCH|DELETE  /entidad/{id}   &cuelga=1 dice qué se lleva ANTES de borrar",
        "GET|POST          /entradas       ?desde=&hasta=&ancla=12,15&tag=&tipo=&q=",
        "GET|PATCH|DELETE  /entrada/{id}   trae sus actividades dentro",
        "POST              /entrada/{id}/actividades",
        "GET|PATCH|DELETE  /actividad/{id}",
        "GET|POST          /tareas         ?estado=&ancla=&hasta=",
        "GET|PATCH|DELETE  /tarea/{id}",
        "POST              /tarea/{id}/hecha   {actividad:{…}, entrada_id?}",
        "GET               /agenda         lo pendiente, ordenado",
        "GET|POST          /mediciones     ?entidad=&parametro=&desde=&hasta=&resumen=1",
        "GET|POST          /fotos          POST en multipart, campo \"foto\"",
        "GET|PATCH|DELETE  /foto/{id}",
        "GET|POST          /adjuntos       enlaces a Drive u otro",
        "GET|DELETE        /adjunto/{id}",
        "GET|PATCH         /terreno        la ficha de contexto",
        "GET               /terrenos       los tuyos",
        "GET               /contexto       [&entidad=N] [&resumen=1]  ← para agentes",
        "GET|POST          /informes       el escaparate de la finca",
        "GET|PATCH|DELETE  /informe/{id}",
        "POST              /informe/{id}/pdf   multipart, campo \"pdf\"",
        "GET               /cobertura      [&familia=X] dónde flaquean los datos",
        "POST              /cobertura      {familia} convierte el hueco en tarea",
        "GET               /buscar&q=",
        "GET               /exportar",
        "GET               /yo"
    ],
    "errores": {
        "422": "lo has pedido mal",
        "403": "no te dejan",
        "404": "no está"
    }
}