Short.io API Guide (go.solanasis.com)
Purpose: Operational guide for managing short URLs on
go.solanasis.comvia the short.io API.Audience: Dmitri, Claude Code, future contractors.
Quick Reference
- Domain: go.solanasis.com (Domain ID:
1662965) - API Base:
https://api.short.io/api - Auth Header:
Authorization: <SHORT_IO_API_KEY> - Dashboard: https://app.short.io
- API Docs: https://developers.short.io/reference
Credential Location
| Tier | Location |
|---|---|
| Local (solanasis-docs) | solanasis-docs/.env → SHORT_IO_API_KEY |
| Local (solanasis-scripts) | solanasis-scripts/.env → SHORT_IO_API_KEY |
| CI/CD Backup | GitHub Secrets → dzinreach/solanasis-docs, dzinreach/solanasis-scripts |
See solanasis-credentials-security-playbook.md for the full three-tier model.
Safety Rules (Non-Negotiable)
For Claude Code / Automated Tools
- NEVER delete any link you did not create via API. All links created by Dmitri through the short.io web UI (source: “website”) are off-limits for modification or deletion.
- NEVER delete or modify Cal.com booking links (
/intro,/meet,/discovery, or any future path pointing tocal.com/*). These are business-critical meeting links. - Before creating a link, always list existing links first to avoid path collisions.
- Tag all API-created links with
"claude-managed"so they can be identified and audited. - Log every create/update/delete operation in the tracking file:
solanasis-docs/operations/short-url-tracking-log.md - Only delete links tagged
claude-managedthat you previously created, and only when explicitly asked by the user.
For Humans
- The API key has full read/write/delete access to all links on
go.solanasis.com. Treat it as HIGH sensitivity. - If the key is compromised, rotate it immediately at short.io → Settings → Integrations & API, then update all three tiers (local .env, GitHub Secrets).
- Rotation cadence: annually, or immediately on suspected compromise.
Common API Operations
List All Links
curl -s -H "Authorization: $SHORT_IO_API_KEY" \
"https://api.short.io/api/links?domain_id=1662965&limit=150" | python -m json.toolCreate a Short Link
curl -s -X POST "https://api.short.io/links" \
-H "Authorization: $SHORT_IO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"domain": "go.solanasis.com",
"originalURL": "https://solanasis.com/your-target-page",
"path": "your-slug",
"tags": ["claude-managed"],
"title": "Description of the link"
}' | python -m json.toolUpdate a Link
curl -s -X POST "https://api.short.io/links/<LINK_ID>" \
-H "Authorization: $SHORT_IO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"originalURL": "https://solanasis.com/new-target"
}' | python -m json.toolDelete a Link (Use With Extreme Caution)
curl -s -X DELETE "https://api.short.io/links/<LINK_ID>" \
-H "Authorization: $SHORT_IO_API_KEY"Pre-delete checklist:
- Link is tagged
claude-managed - Link was created by API (not by Dmitri in the web UI)
- User explicitly requested deletion
- Link is not a Cal.com booking link
Get Link Click Stats
curl -s -H "Authorization: $SHORT_IO_API_KEY" \
"https://api.short.io/links/statistics/<LINK_ID>?period=total"Protected Links (As of 2026-03-19)
These links were created by Dmitri via the short.io web UI. Claude Code must NEVER modify or delete them.
| Path | Link ID | Destination | Status |
|---|---|---|---|
/intro | lnk_6YC1_f3iEXWqmjANQfu8Syz2vN | cal.com/mrsunshine/intro | OK |
/meet | lnk_6YC1_7LNTP0Ow9TC8f8G1JiHeq | cal.com/mrsunshine/meet | OK |
/discovery | lnk_6YC1_NgWuaVMi9qw9iCYYKcQhy | cal.com/mrsunshine/discovery | OK |
/overview | lnk_6YC1_QQcPDnDfjo8liL0DIHX6e | solanasis.com/downloads/solanasis-assessment-overview.pdf | OK |
/ria | lnk_6YC1_C1rmI9zq1nlAwShhs37rK | solanasis.com/downloads/solanasis-ria-assessment.pdf | OK |
/estate | lnk_6YC1_THvB16u6dzOH4a19gLB31 | solanasis.com/downloads/solanasis-estate-assessment.pdf | OK |
/foundations | lnk_6YC1_cZffZ5qnLg41kzwqGpliU | solanasis.com/downloads/solanasis-foundation-assessment.pdf | OK |
/capabilities | lnk_6YC1_aRZ7h20ByW16F6tlJ65OW | solanasis.com/downloads/solanasis-capabilities-brief.pdf | OK |
/faq | lnk_6YC1_sHl4S0C3JDElRfwb8QNDX | solanasis.com/resources/faq | OK |
/reg-sp | lnk_6YC1_9AM1nAGAxSs7EnBcjb4c7 | solanasis.com/downloads/solanasis-reg-sp-guide.pdf | OK |
/partner | lnk_6YC1_LWs4OyopLgdzLLRjixPTX | solanasis.com/partners | OK |
/resources | lnk_6YC1_RgEKm63hhGUQi6n5sdomN | solanasis.com/resources | OK |
/referrals | lnk_6YC1_NcZLQg9ASEc1Amz2DEO7b | solanasis.com/partners | OK |
Troubleshooting
- 401 Unauthorized: API key is wrong or expired. Check
.envvalue matches short.io dashboard. - 409 Conflict: The path slug already exists. List links first to check for collisions.
- Rate limiting: Short.io free tier has generous limits; if you hit them, back off and retry.