{
  "info": {
    "_postman_id": "f74e720c-6cfc-4fe8-9a40-6d590877c32f",
    "name": "MathVoice API",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "apikey",
    "apikey": [
      {
        "key": "key",
        "value": "X-Api-Key",
        "type": "string"
      },
      {
        "key": "value",
        "value": "{{apiKey}}",
        "type": "string"
      },
      {
        "key": "in",
        "value": "header",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://mathvoice.app",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "Normalize speech text to math tokens",
      "id": "f051d92a-f533-45fc-bea3-3d32f3aa493d",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json",
            "type": "text"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/v1/normalize",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v1",
            "normalize"
          ],
          "variable": [],
          "query": []
        },
        "description": "Free tier. No authentication required. ~0ms latency.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"text\": \"change the denominator to y squared\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Parse speech command into a structured IntentResult",
      "id": "54ba575b-1eba-4371-a392-3c75638f3403",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "X-Api-Key",
            "value": "{{apiKey}}",
            "type": "text"
          },
          {
            "key": "Content-Type",
            "value": "application/json",
            "type": "text"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/v1/intent",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v1",
            "intent"
          ],
          "variable": [],
          "query": []
        },
        "description": "API key required. Uses regex tier (<1ms, free) or LLM tier (~500ms, Pro).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"rawText\": \"\",\n  \"normalizedText\": \"\",\n  \"formulaContext\": {\n    \"latex\": \"\\\\frac{-b}{2a}\"\n  },\n  \"editMode\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Apply an IntentResult to an AST",
      "id": "f008f3cd-d106-486b-98cf-0b42c4e3a7c7",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "X-Api-Key",
            "value": "{{apiKey}}",
            "type": "text"
          },
          {
            "key": "Content-Type",
            "value": "application/json",
            "type": "text"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/v1/mutate",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v1",
            "mutate"
          ],
          "variable": [],
          "query": []
        },
        "description": "Returns the new AST, before/after LaTeX, a diff log, and a MathML string. ~0ms — pure computation.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"ast\": {},\n  \"intent\": {},\n  \"editMode\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Convert LaTeX to MathML",
      "id": "8c637483-1f11-45a5-bee2-3ee839b0c413",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "X-Api-Key",
            "value": "{{apiKey}}",
            "type": "text"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/v1/mathml",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v1",
            "mathml"
          ],
          "variable": [],
          "query": [
            {
              "key": "latex",
              "value": "\\frac{-b}{2a}",
              "description": "",
              "disabled": false
            }
          ]
        },
        "description": "Returns a <math> element for JAWS + MathPlayer and NVDA + MathCAT."
      },
      "response": []
    },
    {
      "name": "Convert formula to MathSpeak SSML and plain text",
      "id": "3b6095d8-fd40-4b36-9d6a-69110d85cd6e",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "X-Api-Key",
            "value": "{{apiKey}}",
            "type": "text"
          },
          {
            "key": "Content-Type",
            "value": "application/json",
            "type": "text"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/v1/speak",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v1",
            "speak"
          ],
          "variable": [],
          "query": []
        },
        "description": "Returns SSML suitable for Google Cloud TTS Neural2 and a plain text reading.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"latex\": \"\",\n  \"ast\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    }
  ]
}