Skip to content

noiv quick

Test any API endpoint instantly with comprehensive analysis.

Syntax

bash
noiv quick <url> [OPTIONS]

Description

The quick command provides instant API endpoint testing with immediate feedback. It's perfect for:

  • API exploration - Test new endpoints quickly
  • Connectivity verification - Check if APIs are accessible
  • Basic functionality testing - Verify endpoints work as expected
  • Response analysis - Examine API responses and metadata

Arguments

<url> (required)

The API endpoint URL to test.

bash
noiv quick https://api.github.com/users/octocat
noiv quick http://localhost:8080/api/health
noiv quick https://jsonplaceholder.typicode.com/posts/1

Options

--method, -m

HTTP method to use (default: GET).

bash
noiv quick https://api.example.com/endpoint --method POST
noiv quick https://api.example.com/endpoint -m PUT

Supported methods:

  • GET (default)
  • POST
  • PUT
  • DELETE
  • PATCH
  • HEAD
  • OPTIONS

--headers, -h

Add custom headers to the request.

bash
noiv quick https://api.example.com/endpoint -h "Authorization: Bearer token123"
noiv quick https://api.example.com/endpoint -h "Content-Type: application/json" -h "X-API-Key: key123"

--body, -b

Include request body (for POST/PUT/PATCH requests).

bash
noiv quick https://api.example.com/users -m POST -b '{"name": "John", "email": "john@example.com"}'
noiv quick https://api.example.com/users -m PUT --body @request.json

--timeout, -t

Request timeout in seconds (default: 30).

bash
noiv quick https://slow-api.example.com/endpoint --timeout 60
noiv quick https://api.example.com/endpoint -t 10

--follow-redirects

Follow HTTP redirects (default: true).

bash
noiv quick https://api.example.com/redirect --follow-redirects
noiv quick https://api.example.com/redirect --no-follow-redirects

--verify-ssl

Verify SSL certificates (default: true).

bash
noiv quick https://self-signed.example.com/api --no-verify-ssl

--output, -o

Output format: table (default), json, or yaml.

bash
noiv quick https://api.example.com/endpoint --output json
noiv quick https://api.example.com/endpoint -o yaml

Examples

Basic GET Request

bash
noiv quick https://api.github.com/users/octocat

Output:

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃                                              Quick Test Results                                              ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

🎯 Status: 200 OK (✓)
⏱️  Response Time: 342ms
📦 Content Type: application/json
📏 Response Size: 1.2KB
🔒 HTTPS: Yes

POST Request with JSON Body

bash
noiv quick https://jsonplaceholder.typicode.com/posts \
  --method POST \
  --headers "Content-Type: application/json" \
  --body '{"title": "Test Post", "body": "This is a test", "userId": 1}'

Authenticated Request

bash
noiv quick https://api.github.com/user \
  --headers "Authorization: Bearer ghp_your_token_here"

Testing Local Development API

bash
noiv quick http://localhost:3000/api/health
noiv quick http://localhost:8080/api/users/1 \
  --headers "X-API-Key: dev-key-123"

Request with File Body

bash
# Using file content as request body
noiv quick https://api.example.com/upload \
  --method POST \
  --body @./data.json \
  --headers "Content-Type: application/json"

Custom Timeout for Slow APIs

bash
noiv quick https://slow-api.example.com/heavy-computation \
  --timeout 120

Response Information

The quick command displays comprehensive response information:

Status Information

  • HTTP status code with success/error indication
  • Status text (OK, Not Found, etc.)
  • Success indicator (✓ or ✗)

Performance Metrics

  • Response time in milliseconds
  • DNS resolution time
  • Connection establishment time
  • Time to first byte (TTFB)

Response Details

  • Content type and character encoding
  • Response size in human-readable format
  • Security information (HTTPS, certificates)
  • Server information (if available)

Headers Analysis

  • Important headers highlighted
  • Cache information (Cache-Control, ETag)
  • Security headers (CORS, CSP)
  • Custom headers from the API

Output Formats

Table Format (Default)

bash
noiv quick https://api.example.com/endpoint

Displays results in a formatted table with colors and icons.

JSON Format

bash
noiv quick https://api.example.com/endpoint --output json
json
{
  "url": "https://api.example.com/endpoint",
  "method": "GET",
  "status_code": 200,
  "status_text": "OK",
  "response_time_ms": 342,
  "content_type": "application/json",
  "content_length": 1234,
  "headers": {
    "content-type": "application/json",
    "server": "nginx/1.18.0"
  },
  "success": true,
  "timestamp": "2025-07-24T10:30:00Z"
}

YAML Format

bash
noiv quick https://api.example.com/endpoint --output yaml
yaml
url: https://api.example.com/endpoint
method: GET
status_code: 200
status_text: OK
response_time_ms: 342
content_type: application/json
content_length: 1234
success: true
timestamp: 2025-07-24T10:30:00Z

Use Cases

API Exploration

bash
# Discover API capabilities
noiv quick https://api.example.com/
noiv quick https://api.example.com/health
noiv quick https://api.example.com/version

Connectivity Testing

bash
# Test different environments
noiv quick https://dev-api.example.com/health
noiv quick https://staging-api.example.com/health
noiv quick https://api.example.com/health

Authentication Verification

bash
# Test without auth (should fail)
noiv quick https://api.example.com/protected

# Test with auth (should succeed)
noiv quick https://api.example.com/protected \
  --headers "Authorization: Bearer token123"

Performance Monitoring

bash
# Check response times across endpoints
noiv quick https://api.example.com/fast-endpoint
noiv quick https://api.example.com/slow-endpoint

Error Handling

Network Errors

bash
# Connection timeout
noiv quick https://unreachable.example.com/api
# Output: Connection timeout after 30s

# DNS resolution failure
noiv quick https://nonexistent.example.com/api
# Output: DNS resolution failed

HTTP Errors

bash
# 404 Not Found
noiv quick https://api.example.com/nonexistent
# Output: 404 Not Found (✗)

# 401 Unauthorized
noiv quick https://api.example.com/protected
# Output: 401 Unauthorized (✗)

SSL/TLS Issues

bash
# SSL certificate problems
noiv quick https://expired-ssl.example.com/api
# Output: SSL certificate verification failed

# Self-signed certificates
noiv quick https://self-signed.example.com/api --no-verify-ssl
# Output: 200 OK (✓) - SSL verification disabled

Integration Examples

Shell Scripts

bash
#!/bin/bash
# health_check.sh

echo "Checking API health..."
if noiv quick https://api.example.com/health --output json | jq -r '.success' | grep -q true; then
    echo "API is healthy"
    exit 0
else
    echo "API is down"
    exit 1
fi

CI/CD Pipeline

yaml
# .github/workflows/api-check.yml
- name: Quick API Health Check
  run: |
    noiv quick ${{ env.API_URL }}/health
    if [ $? -ne 0 ]; then
      echo "API health check failed"
      exit 1
    fi

Monitoring Scripts

bash
#!/bin/bash
# api_monitor.sh

ENDPOINTS=(
    "https://api.example.com/health"
    "https://api.example.com/status"
    "https://api.example.com/version"
)

for endpoint in "${ENDPOINTS[@]}"; do
    echo "Testing $endpoint..."
    noiv quick "$endpoint" --timeout 10
    echo "---"
done

Best Practices

1. Use Appropriate Timeouts

bash
# Fast APIs
noiv quick https://api.example.com/quick --timeout 5

# Slow APIs
noiv quick https://api.example.com/complex --timeout 60

2. Include Relevant Headers

bash
# API versioning
noiv quick https://api.example.com/endpoint \
  --headers "Accept: application/vnd.api+json;version=2"

# User agent
noiv quick https://api.example.com/endpoint \
  --headers "User-Agent: NOIV-Quick-Test/1.0"

3. Test Different Scenarios

bash
# Success case
noiv quick https://api.example.com/users/1

# Error case
noiv quick https://api.example.com/users/99999

# Edge case
noiv quick https://api.example.com/users/0

See Also

Released under the MIT License.