Use stable operation targets
Work directly with operation IDs and endpoint operations instead of manually reconstructing paths, payloads, and headers every time.
Start from intent, not from endpoint trivia. Search what you want to do, generate a valid payload from OpenAPI, and execute the call in seconds with reusable presets.
$ orion search offers
30 get:/offers
28 post:/offers/create
$ orion example post:/offers/create --mode minimal
{
"title": "string",
"price": 0
}
$ orion call post:/offers/create --example --dry-run
✓ Request preview ready in one command
Orion sits in the gap between raw OpenAPI files and manual API poking. Instead of hunting through specs, stitching requests by hand, or jumping between tools, you work from the operation itself.
Work directly with operation IDs and endpoint operations instead of manually reconstructing paths, payloads, and headers every time.
See parameters, bodies, and responses without digging through YAML,
chasing $refs, or reverse-engineering docs.
Generate ready-to-run curl commands for debugging, sharing examples, reproducing issues, and automating API workflows.
Curl is great once you already know the endpoint shape. Postman is useful once someone has assembled the request. Raw OpenAPI is the source of truth, but not the fastest interface for exploration. Orion turns the spec into a usable CLI surface.
Example operation IDs below are illustrative and spec-agnostic.
orion search offers
orion search login
orion describe post:/offers/create
Start from what you want to do, then jump to the exact operation.
orion example post:/offers/create
orion call post:/offers/create --example --dry-run
orion call post:/offers/create
Generate payloads and execute with preview-first safety.
./setup.sh
# fallback:
zig build install --prefix ~/.local
Add Orion to your local toolchain and start exploring APIs from OpenAPI specs.
zig build
zig test src/openapi_loader_integration_test.zig
Useful if you want to hack on the project, validate changes, or contribute.
Layered configuration lets project settings override global defaults.
~/.config/orion/config.json
.orion/config.json
Orion is especially useful for local API exploration, debugging, internal tooling, CLI-based workflows, and agent-friendly access to OpenAPI-described systems.
If the idea clicks with you, star the repo, try it on a real API spec, and break it in interesting ways. That is the fastest path to making it better.