Open-source terminal REST client

API workflows,
untangled.

v0.9.6Compatible Script Imports

Write, send, inspect, and automate HTTP requests from readable files without leaving your terminal. Keep every collection versioned beside the code it exercises, ready for the TUI, CLI, scripts, and coding agents.

Install in one line
curl -LsSf https://noodlerest.dev/install.sh | sh

Explore the quick start

Put names, email addresses, and text directly into a JSON body with $random placeholders. Compare the template with its sample response.

Noodle v0.9.6/Feature Tour
development

Requests

body templates
assertions & captures
authentication
scripts
tests
requests
POST$base_url/comments

Request

JSON
{
  "postId": 1,
  "name": $random.name,
  "email": $random.email,
  "body": $random.loremSentence
}

Response

117B in 124ms201 Created
{
  "postId": 1,
  "id": 501,
  "name": "Ada Lovelace",
  "email": "ada@example.com",
  "body": "Sent from Noodle."
}

Shortcuts from the Noodle app. Expand, copy, and send work in this demo. Other commands are shown for reference and disabled.

Fast by default

Stay in the terminal and keep your hands on the keyboard.

Made to review

Keep requests and environments readable beside your code.

Ready to automate

Use the same collection from the TUI, CLI, scripts, CI, and agents.

Requests that belong in the repository.

Every request is a readable YAML file. Edit it in Noodle or your editor, review it in Git, and keep it beside the code it exercises.

collections/users/get.yml
name: Get user
method: GET
url: "$base_url/users/:id"
headers:
  Accept: application/json
params:
  id: 42

The whole exchange, without leaving the terminal.

Compose a request, send it, then move through body, headers, cookies, and timing from the same keyboard-first workspace.

PUT/users/42200 OK87ms
BodyHeaders 12Cookies 2Timeline
{
  "id": 42,
  "name": "Ada Lovelace",
  "role": "developer"
}

Environment-aware without leaking secrets.

Switch between development, staging, and production variables. Secret declarations stay in the file while values live in the OS credential vault or process environment.

developmentactive
stagingready
productionready
API_TOKENOS credential vault

One collection, more than one way to work.

Explore interactively in the TUI, chain captured response values across ordered runs, enforce response assertions, or give coding agents the supported Noodle skill.

$noodle collection run ./api --env staging --json
$noodle agent install
The complete workbench

The rest of the workflow

Focused enough to stay fast, complete enough to handle real API work.

Requests

URL, params, headers, body, and auth

Responses

Text, image previews, binary downloads, headers, cookies, and results

Collections

Folders, inherited context, and Git-friendly files

Scripting

Inline pre/post processing, seeded test data, and explicit persistence

Transport

Proxy, TLS, mTLS, and authentication

Portability

Import OpenAPI, Swagger, Postman, and Insomnia. Export OpenAPI and Postman.

Testing

Response assertions, scripted tests, and JSON Schema validation

Chaining

Capture response values and reuse them in later requests

Automation

Headless CLI runs, CI exit codes, and structured JSON results

Visualization

Search and explore JSON or XML responses as trees and tables

On the stove

Coming next

Planned directions, clearly separated from what Noodle ships today.

Roadmap · v0.9

Advanced tests

Build deeper request checks on inline pre/post scripting.

Roadmap · v0.10

Richer CI reporting

Expand collection runs with reports such as JUnit.

Put your API workflow where it belongs.

Install Noodle and open your first collection.

curl -LsSf https://noodlerest.dev/install.sh | sh

Follow the quick start