TinyVag API
Reduce unwieldy URLs to compact, shareable links — and measure how they perform. Whether you're self-conscious about your link length or just want to track your performance metrics, TinyVag has you covered. No judgment. Just results.
What You Can Build
- Custom URL shorteners — help your users feel better about their link length
- Rich social sharing cards with branded OG images — visual enhancement for any link
- Embeddable content previews — slide your content into any page
- Performance analytics dashboards — hard numbers on how your links measure up
Live Demo
See what you can build with the TinyVag API.
Card Types Overview
TinyVag supports multiple rich card types for different content. Each card type renders a custom preview when shared. Click the "Code" toggle on any card to see the API payload.
EnableMe Campaign
Crowdfunding cards. Perfect for when she takes half of everything.
FUQ Answer
For questions you'll never get a straight answer to.
Gutter Grunt
Social posts. Share your innermost thoughts at 2:47 AM.
Backdoor Job Listing
Jobs requiring "working late" and "planning sessions."
Incestry Profile
Family tree profiles. Document relationships that should have stayed professional.
ShopLift Product
E-commerce cards. Everything must go.
Mid Article
Medium-style articles. Where mediocrity finds its voice.
BrokeIn Post
LinkedIn-style posts. I'm humbled to announce...
Company Card
Portfolio company cards. A Vagibond investment.
Vagify Verification
Employment verification. For when "Executive Assistant" needs air quotes.
BeatKids Track
AI-generated music. For when your feelings need a beat drop.
Analies Glantt Chart
Oh, so NOW you see how it feels, Sara? When you're the one being compared to something, and you come up SHORT? Oh YES, I have the screenshots. Every single text you sent your sister about MY size. "LOL he's not exactly Montgomery material if you know what I mean" — JANUARY 12TH, 11:47 PM, SARA. How do you like THAT? These curves that make you wish you measured up? Don't even try to deny it. I have the receipts. I have ALL the receipts. The Marriott ones AND the group chat ones your sister accidentally forwarded me. Anyway, the Glantt chart renders at 60fps. 4/5 stars.
Quickstart
Shorten a link in one request. Takes your full-length URL and makes it compact.
Shorten a URL
# Make it tiny curl -X POST https://api.vagibond.com/share \ -H "Content-Type: application/json" \ -d '{ "app": "tiny", "type": "redirect", "url": "https://example.com/very/long/url?with=params&that=goes&on=and&on=forever" }'
Response
{
"id": "abc123",
"url": "https://vagibond.com/s/abc123"
}
That's it. Your link is now 4 characters. Is 4 enough? Trust us — it's plenty.
Authentication
Include your API key in the X-TinyVag-Key header with every request.
curl -H "X-TinyVag-Key: your-api-key" \
https://api.vagibond.com/share
Rate Limits
| Tier | Rate Limit | Notes |
|---|---|---|
Free | 100/min | Enough for most people |
Pro | 1,000/min | For heavy users |
Enterprise | Unlimited | Go as hard as you want |
Create Link
Create a new TinyVag link. Takes your full-length URL and makes it compact.
/api/share
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
app | string | Yes | Source application identifier |
type | string | Yes | Content type: redirect, grunt, article, song, job, campaign, profile, paystub, verse |
url | string | For redirect | Target URL to shorten |
title | string | No | Content title (articles, songs) |
excerpt | string | No | Preview text |
Example: URL Redirect
const response = await fetch('https://api.vagibond.com/share', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ app: 'tiny', type: 'redirect', url: 'https://example.com/embarrassingly-long-url-that-you-dont-want-anyone-to-see' }) }); const { id, url } = await response.json(); console.log(`Your tiny link: ${url}`); // → Your tiny link: https://vagibond.com/s/abc123
Rich Card Types
Create links with enhanced visual presentation. Rich cards render custom previews instead of redirecting — making your tiny link look impressive.
| Type | Source App | Description |
|---|---|---|
redirect | Any | 302 redirect to target URL |
grunt | Gutter | Social post card |
ad | Gutter | Sponsored post card |
article | Mid | Article summary card |
song | BeatKids | Music card with player |
job | Backdoor | Job listing card |
campaign | EnableMe | Crowdfunding campaign card |
profile | Vagify | Verification profile card |
paystub | Intranet | Pay stub card (deterministic) |
verse | Church of the U.N.T. | Scripture card |
fuq | FUQbuddy | FAQ answer card |
mid | Mid | Medium-style article card |
post | BrokeIn | LinkedIn-style post card |
company | Vagibond | Portfolio company card |
Example: Grunt Card
{
"app": "gutter",
"type": "grunt",
"profile": {
"name": "DumpsterDave",
"handle": "dave",
"avatar": "https://cdn.vagibond.com/..."
},
"text": "Just found a whole pizza in the recycling. Today is a good day.",
"sentiment": "positive"
}
Get Link
Retrieve metadata for an existing link. See full details about your link's dimensions and performance.
/api/share/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | string | 4-character link ID |
curl https://api.vagibond.com/share/abc123
Get Preview Image
Get the OG preview image for a link. Returns a PNG. Because looks matter.
/api/og?id={id}
<!-- Embed a preview image --> <img src="https://api.vagibond.com/og?id=abc123" alt="Link preview" />
Get Stats Coming Soon
Get performance analytics for a link. Know exactly how you're doing.
/api/share/{id}/stats
Planned response fields:
| Field | Type | Description |
|---|---|---|
clicks | number | Total click count |
uniqueClicks | number | Unique visitors |
lastClickedAt | number | Unix timestamp of last click |
referrers | object | Click sources by referrer |
JavaScript SDK
The fastest way to integrate TinyVag. One script tag, one function call.
<!-- Load the SDK --> <script src="https://vagibond.com/lib/vagibond-share.js"></script> <script> // Shorten a link in one quick call VagibondShare.open({ app: 'tiny', type: 'redirect', url: 'https://example.com/embarrassingly-long-url' }); </script>
The SDK opens a themed share modal, creates the link via the API, and provides copy/share options — all in one call. Fits anywhere, every time.
Other Languages
| Language | Package | Status |
|---|---|---|
| JavaScript | vagibond-share.js | Fully functional |
| Python | pip install tiny | Coming soon |
| Ruby | gem install tiny | Working on it |
| Go | go get tiny | Aspirational |
| cURL | Just use cURL | Always performs |
Pricing
Plans for every size.
| Free | Pro | Enterprise | |
|---|---|---|---|
| Links/month | 100 | 10,000 | Unlimited |
| Rich Cards | Redirect only | All types | All types |
| OG Images | Standard | Enhanced | Premium |
| Analytics | Did anyone click? | Full dashboard | Custom reports |
| TTL | 90 days | 90 days | Custom |
| Support | Community (Gutter) | Email (3-5 days) | Dedicated (Dusty) |
| Rate Limit | 100/min | 1,000/min | Unlimited |