{
  "openapi": "3.1.0",
  "info": {
    "title": "Mon Vertical — consultas públicas",
    "version": "1.0.0",
    "description": "Consulta soluciones y prepara un enlace para revisión. No registra ni envía solicitudes. No introducir datos personales."
  },
  "servers": [
    {
      "url": "https://monvertical.pe"
    }
  ],
  "paths": {
    "/api/public/soluciones": {
      "get": {
        "operationId": "consultarSoluciones",
        "summary": "Consultar líneas comerciales públicas",
        "responses": {
          "200": {
            "description": "Soluciones con fuente y fecha; disponibilidad y precios por confirmar."
          }
        }
      }
    },
    "/api/public/preparar-consulta": {
      "post": {
        "operationId": "prepararConsulta",
        "summary": "Preparar borrador sin enviarlo",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "sector": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "actividad": {
                    "type": "string",
                    "maxLength": 250
                  },
                  "ubicacion": {
                    "type": "string",
                    "maxLength": 120
                  },
                  "personas": {
                    "type": "string",
                    "maxLength": 30
                  },
                  "recursos": {
                    "type": "string",
                    "maxLength": 250
                  },
                  "plazo": {
                    "type": "string",
                    "maxLength": 80
                  }
                },
                "required": [
                  "sector",
                  "actividad"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Borrador, campos faltantes y reviewUrl para revisión y consentimiento del cliente."
          },
          "400": {
            "description": "Cuerpo JSON inválido."
          },
          "422": {
            "description": "Datos no válidos."
          }
        }
      }
    }
  }
}
