The Most i ® Mathematics API
Observe Anything
Send a question, a formula or a structured problem. The engine computes it, an independent verifier checks it, and you get the answer with its steps and a Proof Passport.
1. Your key
Every request (except health) sends your key as a bearer token. Test keys start with tmi_test_ and include 50 calls a month. Live keys start with tmi_live_. Keep keys on your server, never in a browser or app.
export TMI_KEY="tmi_test_..."
2. Solve
Plain words or a formula:
curl https://api.themosti.com/v1/solve \
-H "Authorization: Bearer $TMI_KEY" \
-H "Content-Type: application/json" \
-d '{"question": "x^2 - 5x + 6 = 0"}'
Or a structured problem (no AI step, exact numbers as strings):
curl https://api.themosti.com/v1/solve \
-H "Authorization: Bearer $TMI_KEY" \
-H "Content-Type: application/json" \
-d '{"inputs": {"op": "integral", "expression": "x*exp(x)", "variable": "x"}}'
Response (shortened):
{
"object": "solution",
"status": "proved_in_scope",
"badge": "Proved",
"answer": "x = 3, x = 2",
"steps": [{"stage": "Decompose", "text": "Move everything to one side ..."}, ...],
"verifier": {"id": "sym.roots.v1", "verdict": "confirms", "level": "exact"},
"passport": {"claim_id": "mi-...", "scope": "all 2 complex roots ..."},
"via": "pattern",
"usage": {"ai_calls": 0, "tokens_in": 0, "tokens_out": 0, "cost_usd_estimate": 0}
}
Options: "ai": false never uses the AI reading step. "include_certificate": true adds the machine-checkable certificate. Supported op values are listed in the spec.
3. Observe
Describe something you see. Get the mathematical patterns behind it.
curl https://api.themosti.com/v1/observe \
-H "Authorization: Bearer $TMI_KEY" \
-H "Content-Type: application/json" \
-d '{"subject": "smoke swirling behind a pole"}'
4. Usage
curl https://api.themosti.com/v1/usage -H "Authorization: Bearer $TMI_KEY"
Each 200 from /v1/solve or /v1/observe counts as one call. Errors, and questions with nothing to compute, are not counted. Every response carries X-Quota-Remaining and X-RateLimit-Remaining.
Errors
400 | The request body is not valid. |
401 | The key is missing, invalid or revoked. |
422 | Nothing computable was found. Not counted. |
429 | Too many requests per minute, or the monthly quota is used up. |
503 | The engine is busy. Retry shortly. Not counted. |
{"error": {"type": "quota_exceeded", "message": "Monthly quota reached (50 calls) ...", "status": 429}}