{
  "openapi": "3.1.0",
  "info": {
    "title": "Calculadora de costo mensual de un auto en Chile",
    "version": "1.0.0",
    "description": "API pública de cálculo sin autenticación. No almacena planes ni accede a la tienda. Los parámetros pueden figurar en registros normales del servidor; no envíe datos personales. Omita gastos que no conozca y presente el resultado como parcial. No se incluyen depreciación ni costos no ingresados."
  },
  "servers": [
    {
      "url": "https://www.hf-imports.com"
    }
  ],
  "paths": {
    "/blog/herramientas/costo-mensual-auto/calcular.php": {
      "post": {
        "operationId": "calculateMonthlyCarCost",
        "summary": "Calculadora de costo mensual de un auto en Chile",
        "description": "Calcula un presupuesto mensual y anual en CLP con los valores proporcionados. Devuelve combustible o electricidad, gastos fijos y reservas anuales desglosados. No consulta precios, no cotiza seguros, no compra, no guarda datos y no modifica vehículos. Use esta herramienta para estimar cuánto cuesta mantener un auto.",
        "responses": {
          "200": {
            "description": "Cálculo terminado. Montos en CLP, sin depreciación y con costos constantes. El total se redondea después de sumar; no multiplique subtotales redondeados.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Calculation"
                }
              }
            }
          },
          "400": {
            "description": "JSON o parámetros mal formados"
          },
          "413": {
            "description": "Solicitud mayor que 16 KiB"
          },
          "415": {
            "description": "Use application/json en POST"
          },
          "422": {
            "description": "Valores fuera de rango o campos desconocidos"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Input"
              },
              "example": {
                "energy_type": "fuel",
                "distance_km_month": 1000,
                "efficiency": 12,
                "energy_price_clp": 1300,
                "insurance_clp_month": 35000,
                "maintenance_clp_year": 300000,
                "permit_clp_year": 120000,
                "soap_clp_year": 10000,
                "inspection_clp_year": 24000,
                "parking_clp_month": 0,
                "tolls_clp_month": 0,
                "finance_clp_month": 0
              }
            }
          }
        }
      },
      "get": {
        "operationId": "calculateMonthlyCarCostGet",
        "summary": "Calculadora de costo mensual de un auto en Chile",
        "description": "Calcula un presupuesto mensual y anual en CLP con los valores proporcionados. Devuelve combustible o electricidad, gastos fijos y reservas anuales desglosados. No consulta precios, no cotiza seguros, no compra, no guarda datos y no modifica vehículos. Use esta herramienta para estimar cuánto cuesta mantener un auto.",
        "responses": {
          "200": {
            "description": "Cálculo terminado. Montos en CLP, sin depreciación y con costos constantes. El total se redondea después de sumar; no multiplique subtotales redondeados.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Calculation"
                }
              }
            }
          },
          "400": {
            "description": "JSON o parámetros mal formados"
          },
          "413": {
            "description": "Solicitud mayor que 16 KiB"
          },
          "415": {
            "description": "Use application/json en POST"
          },
          "422": {
            "description": "Valores fuera de rango o campos desconocidos"
          }
        },
        "parameters": [
          {
            "name": "energy_type",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "fuel",
                "electric"
              ]
            },
            "description": "fuel para bencina, diésel o híbrido sin carga externa; electric para eléctrico puro."
          },
          {
            "name": "distance_km_month",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 20000
            },
            "description": "Distancia recorrida en un mes, en kilómetros."
          },
          {
            "name": "efficiency",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "minimum": 0.1,
              "maximum": 200
            },
            "description": "Kilómetros por litro si energy_type es fuel; kWh por 100 km si es electric. Usa el dato de la versión o un consumo medido."
          },
          {
            "name": "energy_price_clp",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 20000
            },
            "description": "Precio en CLP por litro (fuel) o por kWh (electric). Es un valor aportado por quien calcula, no una tarifa consultada en vivo."
          },
          {
            "name": "insurance_clp_month",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 10000000,
              "default": 0
            },
            "description": "Seguro voluntario / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "maintenance_clp_year",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 60000000,
              "default": 0
            },
            "description": "Mantenciones y neumáticos / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "permit_clp_year",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 60000000,
              "default": 0
            },
            "description": "Permiso de circulación / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "soap_clp_year",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 60000000,
              "default": 0
            },
            "description": "SOAP / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "inspection_clp_year",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 60000000,
              "default": 0
            },
            "description": "Revisión técnica / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "parking_clp_month",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 10000000,
              "default": 0
            },
            "description": "Estacionamiento / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "tolls_clp_month",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 10000000,
              "default": 0
            },
            "description": "TAG y peajes / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          {
            "name": "finance_clp_month",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0,
              "maximum": 10000000,
              "default": 0
            },
            "description": "Cuota del auto / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "Input": {
        "type": "object",
        "properties": {
          "energy_type": {
            "type": "string",
            "enum": [
              "fuel",
              "electric"
            ],
            "description": "fuel para bencina, diésel o híbrido sin carga externa; electric para eléctrico puro."
          },
          "distance_km_month": {
            "type": "number",
            "minimum": 0,
            "maximum": 20000,
            "description": "Distancia recorrida en un mes, en kilómetros."
          },
          "efficiency": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 200,
            "description": "Kilómetros por litro si energy_type es fuel; kWh por 100 km si es electric. Usa el dato de la versión o un consumo medido."
          },
          "energy_price_clp": {
            "type": "number",
            "minimum": 0,
            "maximum": 20000,
            "description": "Precio en CLP por litro (fuel) o por kWh (electric). Es un valor aportado por quien calcula, no una tarifa consultada en vivo."
          },
          "insurance_clp_month": {
            "type": "number",
            "minimum": 0,
            "maximum": 10000000,
            "default": 0,
            "description": "Seguro voluntario / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "maintenance_clp_year": {
            "type": "number",
            "minimum": 0,
            "maximum": 60000000,
            "default": 0,
            "description": "Mantenciones y neumáticos / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "permit_clp_year": {
            "type": "number",
            "minimum": 0,
            "maximum": 60000000,
            "default": 0,
            "description": "Permiso de circulación / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "soap_clp_year": {
            "type": "number",
            "minimum": 0,
            "maximum": 60000000,
            "default": 0,
            "description": "SOAP / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "inspection_clp_year": {
            "type": "number",
            "minimum": 0,
            "maximum": 60000000,
            "default": 0,
            "description": "Revisión técnica / año. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "parking_clp_month": {
            "type": "number",
            "minimum": 0,
            "maximum": 10000000,
            "default": 0,
            "description": "Estacionamiento / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "tolls_clp_month": {
            "type": "number",
            "minimum": 0,
            "maximum": 10000000,
            "default": 0,
            "description": "TAG y peajes / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          },
          "finance_clp_month": {
            "type": "number",
            "minimum": 0,
            "maximum": 10000000,
            "default": 0,
            "description": "Cuota del auto / mes. Cero o ausente significa que no se agrega este gasto al cálculo."
          }
        },
        "required": [
          "energy_type",
          "distance_km_month",
          "efficiency",
          "energy_price_clp"
        ],
        "additionalProperties": false
      },
      "Calculation": {
        "type": "object",
        "required": [
          "ok",
          "version",
          "currency",
          "inputs",
          "monthly_clp",
          "annual_clp",
          "assumptions",
          "source_url"
        ],
        "properties": {
          "ok": {
            "const": true
          },
          "version": {
            "type": "string"
          },
          "currency": {
            "const": "CLP"
          },
          "inputs": {
            "$ref": "#/components/schemas/Input"
          },
          "monthly_clp": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          },
          "annual_clp": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          },
          "energy_quantity_month": {
            "type": "number"
          },
          "energy_unit": {
            "enum": [
              "litres",
              "kWh"
            ]
          },
          "cost_per_km_clp": {
            "type": [
              "number",
              "null"
            ]
          },
          "zero_cost_fields": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "assumptions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "source_url": {
            "type": "string",
            "format": "uri"
          },
          "methodology_version": {
            "type": "string"
          }
        }
      }
    }
  }
}
