{
  "name": "Momentix calculator API",
  "description": "Read-only JSON endpoints that use the same formulas as the calculators on momentix.online. No key, no sign-up. Responses are cached for five minutes.",
  "openapi": "https://www.momentix.online/openapi.json",
  "disclaimer": "Estimates for planning and education, not financial, tax, legal or medical advice.",
  "endpoints": [
    {
      "slug": "age-calculator",
      "summary": "Exact age in years, months and days on a chosen date, with total days lived and the next birthday.",
      "page": "https://www.momentix.online/age-calculator",
      "parameters": [
        {
          "name": "dob",
          "kind": "date",
          "required": true,
          "description": "Date of birth (YYYY-MM-DD).",
          "example": "1990-05-15"
        },
        {
          "name": "on",
          "kind": "date",
          "description": "Date to measure the age on (YYYY-MM-DD). Defaults to today (UTC).",
          "example": "2026-10-03"
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/age-calculator?dob=1990-05-15&on=2026-10-03",
      "prefilledPage": "https://www.momentix.online/age-calculator?dob=1990-05-15&on=2026-10-03"
    },
    {
      "slug": "date-difference-calculator",
      "summary": "Days, weeks, months and years between two dates.",
      "page": "https://www.momentix.online/date-difference-calculator",
      "parameters": [
        {
          "name": "start",
          "kind": "date",
          "required": true,
          "description": "First date (YYYY-MM-DD).",
          "example": "2026-01-15"
        },
        {
          "name": "end",
          "kind": "date",
          "required": true,
          "description": "Second date (YYYY-MM-DD). May be earlier than start.",
          "example": "2026-10-03"
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/date-difference-calculator?start=2026-01-15&end=2026-10-03",
      "prefilledPage": "https://www.momentix.online/date-difference-calculator?start=2026-01-15&end=2026-10-03"
    },
    {
      "slug": "business-days-calculator",
      "summary": "Count business days between two dates, or add business days to a start date (Monday-to-Friday week, no holidays).",
      "page": "https://www.momentix.online/business-days-calculator",
      "parameters": [
        {
          "name": "start",
          "kind": "date",
          "required": true,
          "description": "Start date (YYYY-MM-DD).",
          "example": "2026-10-05"
        },
        {
          "name": "end",
          "kind": "date",
          "description": "End date. Give either end (count) or count (add), not both.",
          "example": "2026-10-20"
        },
        {
          "name": "count",
          "kind": "integer",
          "min": -10000,
          "max": 10000,
          "description": "Number of business days to add to start (negative to go back).",
          "example": 11
        },
        {
          "name": "includeEnd",
          "kind": "boolean",
          "default": false,
          "description": "Count the end date as a day (only when using end).",
          "example": false
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/business-days-calculator?start=2026-10-05&end=2026-10-20&count=11&includeEnd=false",
      "prefilledPage": "https://www.momentix.online/business-days-calculator?start=2026-10-05&end=2026-10-20&count=11&includeEnd=false"
    },
    {
      "slug": "loan-repayment-calculator",
      "summary": "Monthly payment and total interest on a fixed-rate loan, with the effect of extra monthly payments or a lump sum.",
      "page": "https://www.momentix.online/loan-repayment-calculator",
      "parameters": [
        {
          "name": "amount",
          "kind": "number",
          "required": true,
          "min": 0.01,
          "description": "Amount borrowed.",
          "example": 10000
        },
        {
          "name": "rate",
          "kind": "number",
          "required": true,
          "min": 0,
          "max": 100,
          "description": "Annual interest rate in percent.",
          "example": 7
        },
        {
          "name": "term",
          "kind": "number",
          "required": true,
          "min": 0.01,
          "description": "Loan term (see unit).",
          "example": 5
        },
        {
          "name": "unit",
          "kind": "enum",
          "options": [
            "years",
            "months"
          ],
          "default": "years",
          "description": "Unit of term.",
          "example": "years"
        },
        {
          "name": "extra",
          "kind": "number",
          "min": 0,
          "default": 0,
          "description": "Extra amount paid every month.",
          "example": 100
        },
        {
          "name": "lump",
          "kind": "number",
          "min": 0,
          "default": 0,
          "description": "One-off lump sum paid in month 1.",
          "example": 0
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/loan-repayment-calculator?amount=10000&rate=7&term=5&unit=years",
      "prefilledPage": "https://www.momentix.online/loan-repayment-calculator?amount=10000&rate=7&term=5&unit=years"
    },
    {
      "slug": "compound-interest-calculator",
      "summary": "Future value of savings with monthly deposits and compound interest.",
      "page": "https://www.momentix.online/compound-interest-calculator",
      "parameters": [
        {
          "name": "principal",
          "kind": "number",
          "min": 0,
          "default": 0,
          "description": "Starting balance.",
          "example": 10000
        },
        {
          "name": "monthly",
          "kind": "number",
          "min": 0,
          "default": 0,
          "description": "Deposit added each month.",
          "example": 200
        },
        {
          "name": "rate",
          "kind": "number",
          "required": true,
          "min": 0,
          "max": 100,
          "description": "Expected annual return in percent.",
          "example": 7
        },
        {
          "name": "years",
          "kind": "number",
          "required": true,
          "min": 0.1,
          "max": 100,
          "description": "Number of years.",
          "example": 20
        },
        {
          "name": "freq",
          "kind": "integer",
          "min": 1,
          "max": 365,
          "default": 12,
          "description": "Compounding periods per year.",
          "example": 12
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/compound-interest-calculator?principal=10000&monthly=200&rate=7&years=20",
      "prefilledPage": "https://www.momentix.online/compound-interest-calculator?principal=10000&monthly=200&rate=7&years=20"
    },
    {
      "slug": "vat-calculator",
      "summary": "Add VAT to a net price or remove VAT from a gross price.",
      "page": "https://www.momentix.online/vat-calculator",
      "parameters": [
        {
          "name": "amount",
          "kind": "number",
          "required": true,
          "min": 0,
          "description": "The price.",
          "example": 120
        },
        {
          "name": "rate",
          "kind": "number",
          "min": 0,
          "max": 100,
          "default": 20,
          "description": "VAT rate in percent (UK: 20, 5 or 0).",
          "example": 20
        },
        {
          "name": "mode",
          "kind": "enum",
          "options": [
            "add",
            "remove"
          ],
          "default": "add",
          "description": "add: amount is net; remove: amount already includes VAT.",
          "example": "remove"
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/vat-calculator?amount=120&rate=20&mode=remove",
      "prefilledPage": "https://www.momentix.online/vat-calculator?amount=120&rate=20&mode=remove"
    },
    {
      "slug": "uk-take-home-pay-calculator",
      "summary": "UK take-home pay after income tax, National Insurance, pension and student loan (England, Wales and Northern Ireland rates for the tax year shown by the page).",
      "page": "https://www.momentix.online/uk-take-home-pay-calculator",
      "parameters": [
        {
          "name": "gross",
          "kind": "number",
          "required": true,
          "min": 0,
          "description": "Gross yearly salary in GBP.",
          "example": 30000
        },
        {
          "name": "pension",
          "kind": "number",
          "min": 0,
          "max": 100,
          "default": 0,
          "description": "Pension contribution as a percentage of gross salary.",
          "example": 0
        },
        {
          "name": "plan",
          "kind": "enum",
          "options": [
            "none",
            "plan1",
            "plan2",
            "plan4",
            "plan5"
          ],
          "default": "none",
          "description": "Student loan plan.",
          "example": "none"
        },
        {
          "name": "postgraduate",
          "kind": "boolean",
          "default": false,
          "description": "Has a postgraduate loan.",
          "example": false
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/uk-take-home-pay-calculator?gross=30000&pension=0&plan=none&postgraduate=false",
      "prefilledPage": "https://www.momentix.online/uk-take-home-pay-calculator?gross=30000&pension=0&plan=none&postgraduate=false"
    },
    {
      "slug": "mortgage-calculator",
      "summary": "Monthly repayment, total interest and loan-to-value for a repayment mortgage.",
      "page": "https://www.momentix.online/mortgage-calculator",
      "parameters": [
        {
          "name": "price",
          "kind": "number",
          "required": true,
          "min": 1,
          "description": "Property price.",
          "example": 300000
        },
        {
          "name": "deposit",
          "kind": "number",
          "min": 0,
          "default": 0,
          "description": "Deposit paid up front.",
          "example": 50000
        },
        {
          "name": "rate",
          "kind": "number",
          "required": true,
          "min": 0,
          "max": 100,
          "description": "Annual interest rate in percent.",
          "example": 4.5
        },
        {
          "name": "years",
          "kind": "number",
          "min": 1,
          "max": 100,
          "default": 25,
          "description": "Mortgage term in years.",
          "example": 25
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/mortgage-calculator?price=300000&deposit=50000&rate=4.5&years=25",
      "prefilledPage": "https://www.momentix.online/mortgage-calculator?price=300000&deposit=50000&rate=4.5&years=25"
    },
    {
      "slug": "hourly-to-salary-calculator",
      "summary": "Convert an hourly rate to a salary, or a salary to an hourly rate.",
      "page": "https://www.momentix.online/hourly-to-salary-calculator",
      "parameters": [
        {
          "name": "amount",
          "kind": "number",
          "required": true,
          "min": 0,
          "description": "The hourly rate, or the yearly salary when mode=salary.",
          "example": 20
        },
        {
          "name": "mode",
          "kind": "enum",
          "options": [
            "hourly",
            "salary"
          ],
          "default": "hourly",
          "description": "What amount is.",
          "example": "hourly"
        },
        {
          "name": "hours",
          "kind": "number",
          "min": 0.5,
          "max": 100,
          "default": 40,
          "description": "Hours worked per week.",
          "example": 37.5
        },
        {
          "name": "weeks",
          "kind": "number",
          "min": 1,
          "max": 52,
          "default": 52,
          "description": "Paid weeks per year.",
          "example": 52
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/hourly-to-salary-calculator?amount=20&mode=hourly&hours=37.5&weeks=52",
      "prefilledPage": "https://www.momentix.online/hourly-to-salary-calculator?amount=20&mode=hourly&hours=37.5&weeks=52"
    },
    {
      "slug": "percentage-change-calculator",
      "summary": "Percentage increase or decrease from an old value to a new value.",
      "page": "https://www.momentix.online/percentage-change-calculator",
      "parameters": [
        {
          "name": "a",
          "kind": "number",
          "required": true,
          "description": "Old (starting) value. Must not be zero.",
          "example": 40
        },
        {
          "name": "b",
          "kind": "number",
          "required": true,
          "description": "New (final) value.",
          "example": 50
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/percentage-change-calculator?a=40&b=50",
      "prefilledPage": "https://www.momentix.online/percentage-change-calculator?a=40&b=50"
    },
    {
      "slug": "tip-and-bill-split-calculator",
      "summary": "Tip, total and each person's share of a bill.",
      "page": "https://www.momentix.online/tip-and-bill-split-calculator",
      "parameters": [
        {
          "name": "bill",
          "kind": "number",
          "required": true,
          "min": 0,
          "description": "Bill before tip.",
          "example": 80
        },
        {
          "name": "tip",
          "kind": "number",
          "min": 0,
          "max": 100,
          "default": 18,
          "description": "Tip percentage.",
          "example": 18
        },
        {
          "name": "people",
          "kind": "integer",
          "min": 1,
          "max": 1000,
          "default": 2,
          "description": "Number of people sharing.",
          "example": 4
        },
        {
          "name": "roundUp",
          "kind": "boolean",
          "default": false,
          "description": "Round each share up to a whole unit.",
          "example": false
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/tip-and-bill-split-calculator?bill=80&tip=18&people=4&roundUp=false",
      "prefilledPage": "https://www.momentix.online/tip-and-bill-split-calculator?bill=80&tip=18&people=4&roundUp=false"
    },
    {
      "slug": "bmi-calculator",
      "summary": "Adult body mass index from metric height and weight, with the healthy weight range.",
      "page": "https://www.momentix.online/bmi-calculator",
      "parameters": [
        {
          "name": "kg",
          "kind": "number",
          "required": true,
          "min": 1,
          "max": 700,
          "description": "Weight in kilograms.",
          "example": 70
        },
        {
          "name": "cm",
          "kind": "number",
          "required": true,
          "min": 50,
          "max": 275,
          "description": "Height in centimetres.",
          "example": 170
        }
      ],
      "exampleRequest": "https://www.momentix.online/api/calc/bmi-calculator?kg=70&cm=170",
      "prefilledPage": "https://www.momentix.online/bmi-calculator?kg=70&cm=170"
    }
  ]
}
