Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
URL shortener, QR code generator, and link analytics API. Create short links, generate QR codes, and track click analytics.
URL shortener, QR code generator, and link analytics API. Create short links, generate QR codes, and track click analytics.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Jo4 is a modern URL shortening service with QR code generation and detailed link analytics.
All protected endpoints require an API key. Set your API key as an environment variable: export JO4_API_KEY="your-api-key" Get your API key from: https://jo4.io/api-keys
https://jo4-api.jo4.io/api/v1
curl -X POST "https://jo4-api.jo4.io/api/v1/protected/url" \ -H "X-API-Key: $JO4_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "longUrl": "https://example.com/very-long-url", "title": "My Link" }' Request Body: longUrl (required) - The destination URL (max 2048 chars) title (optional) - Link title (max 200 chars) description (optional) - Link description (max 500 chars) shortUrl (optional) - Custom alias (max 16 chars, alphanumeric/hyphen/underscore) expirationTime (optional) - Unix timestamp for link expiration passwordProtected (optional) - Boolean to enable password protection password (optional) - Password if protected (4-128 chars) UTM Parameters: utmSource, utmMedium, utmCampaign, utmTerm, utmContent Response: { "response": { "id": 123, "slug": "abc123", "shortUrl": "abc123", "fullShortUrl": "https://jo4.io/a/abc123", "longUrl": "https://example.com/very-long-url", "title": "My Link", "qrCodeUrl": "https://jo4.io/qr/abc123" } }
curl -X POST "https://jo4-api.jo4.io/api/v1/public/url" \ -H "Content-Type: application/json" \ -d '{"longUrl": "https://example.com"}' Limited features, no analytics access.
curl -X GET "https://jo4-api.jo4.io/api/v1/protected/url/{slug}" \ -H "X-API-Key: $JO4_API_KEY"
curl -X GET "https://jo4-api.jo4.io/api/v1/protected/url/{slug}/stats" \ -H "X-API-Key: $JO4_API_KEY" Response includes: Total clicks Clicks by date Geographic distribution Device/browser breakdown Referrer sources
curl -X GET "https://jo4-api.jo4.io/api/v1/protected/url/myurls?page=0&size=20" \ -H "X-API-Key: $JO4_API_KEY"
curl -X PUT "https://jo4-api.jo4.io/api/v1/protected/url/{id}" \ -H "X-API-Key: $JO4_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "title": "Updated Title", "longUrl": "https://new-destination.com" }'
curl -X DELETE "https://jo4-api.jo4.io/api/v1/protected/url/{id}" \ -H "X-API-Key: $JO4_API_KEY"
Every short URL automatically gets a QR code at: https://jo4.io/qr/{shortUrl}
Rate limits vary by plan: Free: 60 requests/minute Pro: Up to 10,000 requests/minute Anonymous (public endpoints): 10 requests/minute
Full OpenAPI/Swagger documentation: https://jo4-api.jo4.io/swagger-ui/index.html
curl -X POST "https://jo4-api.jo4.io/api/v1/protected/url" \ -H "X-API-Key: $JO4_API_KEY" \ -H "Content-Type: application/json" \ -d '{"longUrl": "https://example.com/article", "title": "Article"}'
curl -X POST "https://jo4-api.jo4.io/api/v1/protected/url" \ -H "X-API-Key: $JO4_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "longUrl": "https://mysite.com/landing", "title": "Q1 Campaign", "utmSource": "twitter", "utmMedium": "social", "utmCampaign": "q1-2026" }'
curl -X POST "https://jo4-api.jo4.io/api/v1/protected/url" \ -H "X-API-Key: $JO4_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "longUrl": "https://mysite.com/promo", "title": "Limited Offer", "expirationTime": 1738454400 }'
CodeMeaning400Bad request - invalid parameters401Unauthorized - missing or invalid API key403Forbidden - insufficient permissions404Not found - URL doesn't exist429Rate limit exceeded
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.