v0.4.1
215 downloads
No Cloud Sync. No Forced Login.

YAML in.HTTP out.

Chain API requests in YAML. Switch environments with a flag. Run complex workflows from your terminal. Commit to git. No Electron apps.

Requires curl (macOS/Linux) or PowerShell (Windows)

auth-flow.yapi.yml
yapi: v1
# Chain requests together
chain:
- name: login
url: ${url}/auth/login
method: POST
body:
user: "dev_sheep"
expect:
assert:
- .token != null
- name: get_profile
url: ${url}/me
headers:
Auth: Bearer ${login.token}
zsh — yapi run
$ yapi run auth-flow.yapi.yml -e prod
Running step 1: login...
Running step 2: get_profile...
--- Step 2: get_profile ---
{
"name": "Dev Sheep",
"email": "dev@example.com",
"role": "admin"
}
URL: https://api.example.com/me
Time: 67ms
Size: 78B
Chain completed successfully.
🔗

Request Chaining

Chain requests together declaratively. Pass data between steps. Validate with assertions. Build auth flows and integration tests without a separate framework.

🌍

Environment Configs

One yapi.config.yml to manage dev, staging, and prod. Switch with a flag. No duplicate files. Load secrets from shell env. Perfect for teams and CI/CD.

🧠

Built-in LSP

Full Language Server with autocompletion, real-time validation, and hover info. Works with Neovim, VS Code, and any LSP-compatible editor. No extensions needed.

Go Native Speed

Written in Go. Starts instantly. Uses minimal RAM. No Electron bloat, no loading spinners, no updates that move your buttons. Just a fast, reliable CLI tool.

🤝

Team Friendly

Review API changes in Pull Requests. Diff your request bodies. Merge conflicts are just text conflicts. True collaboration without shared cloud workspaces.