| Crates.io | apisnip |
| lib.rs | apisnip |
| version | 1.4.59 |
| created_at | 2025-04-01 16:27:44.755793+00 |
| updated_at | 2025-04-18 10:05:34.143444+00 |
| description | A terminal user interface (TUI) tool for trimming OpenAPI specifications down to size ✂️ |
| homepage | |
| repository | https://github.com/Tuurlijk/apisnip |
| max_upload_size | |
| id | 1615050 |
| size | 2,354,207 |
A terminal user interface (TUI) tool for trimming OpenAPI specifications down to size. Apisnip allows you to interactively select which endpoints to keep in your API specification, making it easy to generate smaller, focused API surfaces.

cargo install apisnip
Pre-built binaries and packages are available on the GitHub releases page for multiple platforms and architectures:
.deb packagesEach release includes SHA256 checksums for verifying file integrity.
# Linux x86_64 example
curl -L https://github.com/Tuurlijk/apisnip/releases/download/[version]/apisnip-linux-x86_64.tar.gz | tar xz
./apisnip
# Or install using your system's package manager
# Debian/Ubuntu
sudo dpkg -i apisnip_[version]_amd64.deb
# Homebrew (macOS)
brew install apisnip
Replace [version] with the desired release version (e.g., v1.4.56).
apisnip input [output.yaml]
input: The input OpenAPI specification (required)
https://example.com/api.yaml)output.yaml: The output file path (optional, defaults to "apisnip.out.yaml")↑ or k: Move selection up↓ or j: Move selection downSpace: Toggle selection of current endpoint ✂️/: Activate search mode 🔍Esc: Exit search modePage Up: Scroll up one pagePage Down: Scroll down one pageHome / End: Jump to the top or bottom of the list 🔝w: Write selected endpoints to output file and quitq: Quit without savingApiSnip includes a powerful fuzzy search:
/ to enter search modeEsc to exit search and restore the full listApiSnip provides an intuitive interface for managing API endpoints:
# Read from local file and write to output.yaml
apisnip input.yaml output.yaml
# Read from local JSON file and write to apisnip.out.yaml
apisnip input.json
# Read from remote URL and write to custom output file
apisnip https://petstore.swagger.io/v2/swagger.json my-petstore-api.yaml
git clone https://github.com/Tuurlijk/apisnip.git
cd apisnip
cargo build --release