This skill should be used when the user asks to "make HTTP requests in Nushell", "call an API", "fetch data from URL", "POST JSON data", "handle webhooks", "work with REST APIs", "authenticate API calls", "parse API responses", or mentions http get, http post, web requests, REST, or API integration in Nushell.
View on GitHubFebruary 1, 2026
Select agents to install to:
npx add-skill https://github.com/danielbodnar/nushell-dev/blob/main/plugins/nushell-dev/skills/nushell-http-api/SKILL.md -a claude-code --skill nushell-http-apiInstallation paths:
.claude/skills/nushell-http-api/# Nushell HTTP & API Integration
Comprehensive guide for making HTTP requests, integrating with REST APIs, and handling webhooks in Nushell. Native HTTP commands return structured data, making API responses immediately usable in pipelines.
## HTTP Commands Overview
| Command | Description |
|---------|-------------|
| `http get` | GET request, returns parsed response |
| `http post` | POST with body |
| `http put` | PUT request |
| `http patch` | PATCH request |
| `http delete` | DELETE request |
| `http head` | HEAD request (headers only) |
| `http options` | OPTIONS request |
## Basic Requests
### GET Requests
```nushell
# Simple GET - auto-parses JSON
http get https://api.example.com/users
# With query parameters
http get $"https://api.example.com/search?q=($query)&limit=10"
# Access response fields directly
http get https://api.example.com/user/1 | get name
```
### POST Requests
```nushell
# POST JSON body
http post https://api.example.com/users {
name: "Alice"
email: "alice@example.com"
}
# POST with content type
http post --content-type application/json https://api.example.com/data {
key: "value"
}
# POST form data
http post --content-type application/x-www-form-urlencoded https://api.example.com/form $"username=($user)&password=($pass)"
```
### Other Methods
```nushell
# PUT (replace resource)
http put https://api.example.com/users/1 {name: "Updated Name"}
# PATCH (partial update)
http patch https://api.example.com/users/1 {status: "active"}
# DELETE
http delete https://api.example.com/users/1
```
## Headers and Authentication
### Custom Headers
```nushell
# Single header
http get https://api.example.com/data -H {Accept: "application/json"}
# Multiple headers
http get https://api.example.com/data -H {
Accept: "application/json"
X-Request-ID: (random uuid)
User-Agent: "nushell-client/1.0"
}
```
### Authentication Patterns
```nushell
# Bearer token
http get https://api.example.com/protected -H {
Authorization: $