Vagibond

Follow Vagibond

Stay connected with us on social media for updates on new ventures.

Thanks for subscribing!

Gutter API

Access the world's largest database of guttural human expression. The Gutter API provides programmatic access to over 890 million grunts, 4,000 catalogued grunt types, and the only AI translation layer that claims to convert primal sounds into English (success rate: 12%).

🗣
Audio Format Support
We support all audio formats capable of capturing the full spectrum of human despair: WAV, MP3, OGG, and raw screaming directly into the microphone.

What you can build

Quickstart

Start grunting programmatically in under 5 minutes.

1. Get your API key

Sign up for a free Gutter Developer account. Free tier includes 500 grunts/day and access to the translation API (results may vary).

2. Install the SDK

bash
# npm
npm install @vagibond/gutter-sdk

# pip
pip install gutter-api

# If you're truly committed
curl -X POST https://api.gutter.vagibond.com/v1/grunts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"audio_url": "https://example.com/my-grunt.mp3"}'

3. Post your first grunt

javascript
import { Gutter } from '@vagibond/gutter-sdk';

const client = new Gutter('your_api_key');

// Post a grunt from audio file
const grunt = await client.grunts.post({
  audio_url: 'https://your-server.com/aaarrgh.mp3',
  intensity: 0.87, // 0-1 scale, 0.87 = quite frustrated
  hashtags: ['#AAARRGH', '#mondaymorning']
});

console.log(grunt);
// {
//   id: "grt_8f3k2j1",
//   audio_url: "https://cdn.gutter.vagibond.com/grunts/grt_8f3k2j1.mp3",
//   transcription: "AAAAARRRRRGGGHHHH",
//   translation: "I am experiencing displeasure", // AI attempt
//   translation_confidence: 0.12, // As expected
//   intensity: 0.87,
//   regrunts: 0,
//   created_at: "2024-01-15T08:30:00Z"
// }

Authentication

All API requests require authentication. We support two methods:

Prefix Type Usage
gtr_live_ Production Real grunts, real intensity, real consequences
gtr_test_ Sandbox Fake grunts that nobody hears (just like real life)

Rate Limits

Even we have limits on how much screaming we can process.

Plan Grunts/day Translations/day Spaces Access
Free Tier 500 100 (12% accurate) Listen only
Premium Profanity 10,000 Unlimited (still 12% accurate) Full yelling rights
Enterprise Anger Unlimited Unlimited Host your own Spaces

Grunts API

GET /v1/grunts/timeline

Returns a timeline of grunts from users you follow, sorted by intensity.

Query Parameters

Parameter Type Description
min_intensity float Filter grunts below this intensity (0.0-1.0)
include_translations boolean Include AI translation attempts (default: false, save yourself)
limit integer Max grunts to return (default: 50)

Response

json
{
  "grunts": [
    {
      "id": "grt_x7k9m2",
      "user": {
        "id": "usr_abc123",
        "handle": "@ShoutyPete",
        "verified_grunter": true
      },
      "audio_url": "https://cdn.gutter.vagibond.com/grunts/grt_x7k9m2.mp3",
      "transcription": "HRRRNNNGGGHHHH BLAAARRGH",
      "intensity": 0.94,
      "grunt_type": "frustrated_morning",
      "hashtags": ["#AAARRGH", "#traffic"],
      "regrunts": 47,
      "created_at": "2024-01-15T07:45:00Z"
    }
  ]
}
POST /v1/grunts

Post a new grunt to the platform. Audio is analyzed for intensity, classified by our 4,000-type grunt taxonomy, and optionally translated (poorly).

Request Body

json
{
  "audio_url": "https://your-server.com/grunt.mp3",
  "hashtags": ["#grumble", "#existential"],
  "reply_to": "grt_parent123", // optional
  "location": { // optional, for local grunt discovery
    "lat": 37.7749,
    "lng": -122.4194
  }
}
🔊
Audio Requirements
Grunts must be between 0.5 and 30 seconds. Audio containing discernible words may be rejected - this is Gutter, not Twitter.
POST /v1/grunts/translate

Attempt to translate a grunt into human-readable text using our proprietary AI. Success rate: approximately 12%. We're not proud of this number but we're honest about it.

Request Body

json
{
  "grunt_id": "grt_x7k9m2",
  "target_language": "en" // Also supports: "es", "fr", "existential_dread"
}

Response

json
{
  "grunt_id": "grt_x7k9m2",
  "original_transcription": "HRRRNNNGGGHHHH BLAAARRGH",
  "translation": "I believe the traffic situation is suboptimal",
  "confidence": 0.08,
  "alternative_translations": [
    "My coffee is cold",
    "Existence is pain",
    "The meeting could have been an email"
  ],
  "disclaimer": "This translation is almost certainly wrong"
}
POST /v1/spaces/join

Join a live Gutter Space - real-time group yelling sessions where users express themselves through synchronized grunting.

Request Body

json
{
  "space_id": "spc_monday_rage",
  "mode": "yeller" // or "listener" for free tier
}

Active Spaces (Sample)

Space Participants Avg Intensity Theme
spc_monday_rage 2,847 0.91 Start of week frustration
spc_tech_support 1,203 0.97 IT-related screaming
spc_peaceful_grumble 89 0.34 Low-intensity venting
POST /v1/panhandle

Our most popular module. Initiate an aggressive panhandling campaign attached to your grunts. Converts primal expression into revenue through our proprietary "Sympathy-to-Currency" algorithm.

Request Body

json
{
  "grunt_id": "grt_x7k9m2",
  "intensity": "aggressive", // "passive", "aggressive", "very_aggressive"
  "amount_requested": 5.00,
  "currency": "USD", // Also accepts: "cans", "favors", "crypto"
  "message": "Every grunt helps. Please donate to keep me grunting."
}
💰
Conversion Rates
Average panhandle-per-grunt: $0.003. Top grunters have achieved up to $0.47/grunt. The key is intensity and authenticity.

Grunt Catalog

Our linguists have catalogued over 4,000 distinct grunt types. Here are the most common:

Type Code Name Typical Intensity Common Context
frustrated_morning The Monday Moan 0.75-0.90 6-9 AM, coffee-related
traffic_rage Commuter's Lament 0.85-0.98 Rush hour, any city
existential_sigh The Void Acknowledgment 0.30-0.50 2-4 AM, alone
meal_satisfaction The Food Grunt 0.20-0.40 Post-meal contentment
tech_frustration The IT Scream 0.92-1.00 Software updates, printers
pure_primal Uncategorized Rage 0.95-1.00 Unknown, concerning

Pricing

FREE
Whimper
For casual grunters
$0/month
  • 500 grunts/day
  • 100 translations (12% accurate)
  • Listen-only Spaces access
  • Basic analytics
Get Started
ENTERPRISE
Unlimited Anger
For organizations
$299/month
  • Unlimited everything
  • Host private Spaces
  • Custom grunt taxonomy
  • Dedicated rage support
  • SLA for uptime (not mood)
Contact Sales

Changelog

v3.2.0 January 8, 2024 Feature
  • Added 200 new grunt types including zoom_fatigue and ai_replacement_anxiety
  • Improved translation accuracy from 11% to 12% (major breakthrough)
  • New Spaces feature: "Synchronized Screaming" for group catharsis
v3.1.0 December 1, 2023 Feature
  • Launched Aggressive Panhandling module
  • Added support for grunt threads (sequential screaming)
  • New intensity algorithm accounts for time of day
v3.0.0 October 15, 2023 Breaking
  • Removed support for actual words in grunts (policy violation)
  • Deprecated /v2/ endpoints
  • New grunt classification system with 4,000 types