Skip to content
Y
YAS.SH
Migration

Migrating From Short.io to yas.sh: Domains, Links, and Automation

A step-by-step Short.io migration: exporting links and domains, re-creating branded links, and moving automation without downtime.

yas-team3 min readmigrationshortiodomains
Migrating From Short.io to yas.sh: Domains, Links, and Automation
Featured imageMigrating From Short.io to yas.sh: Domains, Links, and Automation

Short.io users usually arrive with two assets: a library of links and a custom domain. Both migrate cleanly if the sequence is right. This playbook covers the whole move — data, DNS, and automation — with the failure points called out.

Step 1 — Inventory and export

Export your links from Short.io (their CSV export includes short URL, long URL, title, and creation data). Add the domain inventory: which custom domains are in use, where their DNS lives, and which links depend on each domain.

Step 2 — Prepare DNS for the switch

The domain move is the highest-risk step, so prepare it:

  1. Lower the TTL on the domain's DNS records 24 hours before cutover (e.g. 86400 → 300) so the final switch propagates fast.
  2. Add the domain in the yas.sh dashboard and note the edge hostname.
  3. Pre-flight: point a test subdomain at the new edge and confirm TLS issuance completes (custom domains guide).

Same discipline as any bulk job — 1/sec pacing, idempotency keys, explicit collision handling (bulk guide):

# one row per link: destination,alias
while IFS=, read -r dest alias; do
  curl -s -X POST https://yas.sh/api/v1/links \
    -H "Authorization: Bearer yas_live_..." -H "Content-Type: application/json" \
    -H "Idempotency-Key: sio-$alias" \
    -d "{\"originalUrl\":\"$dest\",\"customAlias\":\"$alias\"}"
  sleep 1
done < shortio-export.csv

Prefer keeping your Short.io aliases — they're already in print, email, and bookmarks.

Step 4 — Forward old URLs during overlap

During the transition, old Short.io URLs must keep working. Two options:

  • Short.io side: keep the account active during the window; its links keep resolving (optionally with its own redirects).
  • Own domain: when the domain moves to yas.sh, the same aliases resolve on the new platform — the DNS cutover is the forwarding.

The overlap window is the safety net: any URL still pointing at old infrastructure keeps working until DNS and content settle.

Step 5 — Port the automation

Short.io automation ports cleanly to the OpenAPI-documented API: REST + JSON, Bearer auth, idempotency, and rate limits. The fastest port for typed codebases is regenerating clients from the spec (guide):

// before: short.io client
// after: same shapes, new client generated from https://yas.sh/api/v1/openapi

Walk the automation inventory line by line: link creation jobs, analytics pulls, QR generation, campaign builders. Each maps to a yas.sh endpoint — the webhooks & automation guide has the patterns.

Step 6 — Verify and cut over

  • Spot-check 5% of migrated links end-to-end (old URL → new link → destination).
  • Confirm the custom domain serves TLS on the new platform (curl -I https://go.yourbrand.com/launch).
  • Run a full CSV export and reconcile counts against the source export.
  • Announce the platform switch internally; update dashboards and bookmarks.

The failure points, called out

Risk Mitigation
DNS propagation race Lower TTL 24h before; verify before announcing
Certificate delay on cutover Pre-flight TLS on a test subdomain
Alias collisions in bulk Idempotency keys + 409 handling in the script
Automation drift Regenerate clients from the spec; test against the contract
Data cutoff confusion Document the analytics cutoff date for reporting

Conclusion

Short.io migration is a data job, a DNS job, and an automation job — in that order, with overlap as the safety net. The custom domains guide handles the DNS half, the bulk creation guide the data half, and the OpenAPI guide the automation half. Follow the sequence and nothing breaks.

Frequently asked questions

Can I move my custom domain from Short.io to yas.sh?

Yes — repoint the DNS (CNAME) to yas.sh's edge, re-create the links under the same aliases, and forward the old Short.io URLs during the transition.

What about Short.io's API automation I already built?

The yas.sh API is OpenAPI-documented, so the automation ports cleanly: same REST+JSON shape, new base URL and auth header. The openapi-typescript guide shows the fastest path.

Do link clicks survive the move?

Historical click data stays in Short.io's export. New analytics start at cutover — set the cutoff date in your reporting so the datasets join cleanly.

What's the riskiest part?

The DNS switch. Plan the TTL (lower it 24h before), verify the new platform's certificate, and keep the old provider live during the overlap window.

Was this helpful? Share
🍪 Cookies & privacy. yas.sh uses only essential cookies to keep you signed in and remember your preferences. We do not run third-party trackers. See our cookie policy and privacy policy.
Settings