API reference
Two routes, one auth header, one body shape. No SDK, no request-side config.
Endpoints
| Route | Does |
|---|---|
POST https://obix.dev/v1/minify | strips whitespace, shortens names, drops dead code - smaller output |
POST https://obix.dev/v1/mangle | renames, encodes strings, flattens control flow, splits strings - larger, hard to reverse |
| Auth | X-Api-Key: <your key> header, same key for both |
|---|---|
| Body | {"code":"..."} - that's the whole body |
Defaults
| Endpoint | Applies |
|---|---|
/minify | mangle + compress |
/mangle | compact, control-flow flattening, string splitting, string-array shuffle, numbers-to-expressions |
Errors
Non-200 responses look like {"ok":0,"err":"..."}.
| Error | Meaning |
|---|---|
400 bad request | body is not JSON, or code is missing / not a string |
401 bad key | key missing, unknown, or disabled |
405 method not allowed | anything other than POST |
413 payload too large | body exceeds the current payload cap (see limits) |
422 parse error: ... | your JS does not parse - message tells you where |
503 busy | queue was full when yours arrived - retry shortly |
FAQ
How do I get a key?
Create an account - your key is in the dashboard right away. What a key can do is on the limits page.
What's the difference between minify and mangle?
/minify
makes your JS smaller by stripping whitespace and shortening names. /mangle goes
further - renaming, encoding strings, and flattening control flow to make the output hard to
read or reverse, at the cost of a larger file.
Do I need to configure anything?
No. Each endpoint has one tested setting - there's no options object to pass.
