{
  "tool_id": "budget_rule_503020",
  "slug": "50-30-20-budget-calculator",
  "path": "/50-30-20-budget-calculator/",
  "mode": "url_api",
  "api_usage": "GET https://aifinhub.io/api/50-30-20-budget-calculator/?<params>",
  "sample_input": {
    "tool": "budget_503020",
    "monthly_income": 5000,
    "needs_pct": 50,
    "wants_pct": 30,
    "savings_pct": 20
  },
  "input_schema": {
    "type": "object",
    "properties": {
      "tool": {
        "type": "string"
      },
      "monthly_income": {
        "type": "integer"
      },
      "needs_pct": {
        "type": "integer"
      },
      "wants_pct": {
        "type": "integer"
      },
      "savings_pct": {
        "type": "integer"
      }
    },
    "required": [
      "tool",
      "monthly_income",
      "needs_pct",
      "wants_pct",
      "savings_pct"
    ]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "monthlyIncome": {
        "type": "number"
      },
      "allocations": {
        "type": "object",
        "properties": {
          "needs": {
            "type": "object",
            "properties": {
              "recommended": {
                "type": "number"
              },
              "actual": {
                "type": "number"
              },
              "variance": {
                "type": "number"
              }
            }
          },
          "wants": {
            "type": "object",
            "properties": {
              "recommended": {
                "type": "number"
              },
              "actual": {
                "type": "number"
              },
              "variance": {
                "type": "number"
              }
            }
          },
          "savings": {
            "type": "object",
            "properties": {
              "recommended": {
                "type": "number"
              },
              "actual": {
                "type": "number"
              },
              "variance": {
                "type": "number"
              }
            }
          }
        }
      },
      "totalActual": {
        "type": "number"
      },
      "isWithinBudget": {
        "type": "boolean"
      }
    }
  }
}
